Amazon Linux へ wordpress 設定(インスタンスとAMI作成まで)

Amazon Linux へ wordpress 設定

WordPress へ Let’s Encrypt の適用をて試してみたいので実践

まずは EC2 インスタンスの作成
作成するインスタンスはAmazonLinux で
インスタンスタイプは t2.micro
これを選んで確認と作成をクリック

aws

aws2

次にセキュリティグループの設定
このままだとすべて通信許可になるので
セキュリティグループの編集をクリック

aws3

接続するSSHの制限をかけるので
ソースをカスタムから
マイIP
へ変更しルールの追加をクリック

aws4

HTTPS
HTTPを追加するので
タイプをHTTPS
としてルールを追加
もうひとつ
HTTPを設定したら確認と作成をクリック

aws5

あとは画面右下の作成をクリックすると
ログインに使うキーペアをどうするか聞かれる

aws6

とりあえずセキュリティのため
新しいキーペアを作成する

この場合、キーペア名を設定しダウンロードすることになる
とりあえずは wp-aws としておく

あとは
キーペアのダウンロードをクリックして
ファイルを保存したら
インスタンスの作成
をクリック

aws7

これでインスタンスが作成されます

あとは失敗したときのことを考えて
AMI を作成しておきます

作成したインスタンスをチェックし
アクションからイメージの作成をクリック

aws9

次に概要を入力するので

http://tech.lexues.co.jp/archives/1704
にあるように
再起動しないにチェックをいれるのを忘れずに
これをしないとインスタンスが再起動してしまいます

とりあえず今回は
イメージ名
wordpress_test

説明には
wordpress test
としておきます

あとはイメージの作成をクリック

aws10

これでAMIができたので
失敗したらここから作成し直すことができます


PDF
カテゴリー: AWS + Wordpress | コメントをどうぞ

ラズパイ3へ Redmine の導入

ラズパイ3へ Redmine インストール

RaspberryPiにRedmineをインストールする方法

を参考にインストール

まずパッケージのアップデート

sudo apt-get -y update
sudo apt-get -y upgrade

次に redmine に必要なパッケージのインストール

sudo apt-get -y install apache2 libapache2-mod-passenger imagemagick libmagick++-dev ruby-dev bundler git subversion

DBにmysql を使うのでインストールする予定だったが
libmysqlclient-dev がないため、postgresql を使う
ように変更

まずロケール設定

sudo locale-gen ja_JP.UTF-8

次に開発ツールと ruby passenger 関連インストール

sudo apt-get -y install build-essential zlib1g-dev libssl-dev libreadline-dev libyaml-dev libcurl4-openssl-dev 

そして postgresql のインストール

sudo apt-get -y install postgresql postgresql-server-dev-9.5

次に apache 関連インストール

 sudo apt-get -y install apache2 apache2-dev libapr1-dev libaprutil1-dev 

次に imagemagic と日本語フォントのインストール

sudo apt-get install -y imagemagick libmagick++-dev 
sudo apt-get -y install fonts-takao

しかしメモリ不足のためインストールエラー
このため一度再起動して再度挑戦

sudo apt-get -y install fonts-taksudo 
apt-get -y install fonts-takao
fc-list | grep takao

として

/usr/share/fonts/truetype/takao-mincho/TakaoPMincho.ttf: Takao P明朝,TakaoPMincho:style=Regular
/usr/share/fonts/truetype/takao-gothic/TakaoPGothic.ttf: Takao Pゴシック,TakaoPGothic:style=Regular
/usr/share/fonts/truetype/takao-gothic/TakaoGothic.ttf: Takaoゴシック,TakaoGothic:style=Regular
/usr/share/fonts/truetype/takao-mincho/TakaoMincho.ttf: Takao明朝,TakaoMincho:style=Regular

となればOK

[/shell]
sudo apt-get install git subversion
[/shell]
でバージョン管理ソフト git と subversion
のインストール

次に ruby のバージョンの確認

ruby -v

を実行したところ、現在のバージョンは
ruby 2.3.3p222
これはもともと入ってました

次に bundlerのインストール

sudo gem install bundler --no-document

–no-document
をつけるとドキュメントなしになります

次に PostgreSQL のバージョン確認

psql --version

今回は
psql (PostgreSQL) 9.6.6
でした

次に Redmine用ユーザ作成

sudo -u postgres createuser -P redmine

そして Redmine のためのDB作成

sudo -u postgres createdb -E UTF-8 -l ja_JP.UTF-8 -O redmine -T template0 redmine

次にDB設定値確認

sudo -u postgres psql -U postgres 

で PostgreSQL のコンソールになるので

\l

を実行するとDB設定をみることができます
なお、この画面を抜けるには q を押せばOK

                                         データベース一覧
   名前    |  所有者  | エンコーディング |  照合順序   | Ctype(変換演算子) |      アクセス権       
-----------+----------+------------------+-------------+-------------------+-----------------------
 postgres  | postgres | UTF8             | ja_JP.UTF-8 | ja_JP.UTF-8       | 
 redmine   | redmine  | UTF8             | ja_JP.UTF-8 | ja_JP.UTF-8       | 
 template0 | postgres | UTF8             | ja_JP.UTF-8 | ja_JP.UTF-8       | =c/postgres          +
           |          |                  |             |                   | postgres=CTc/postgres
 template1 | postgres | UTF8             | ja_JP.UTF-8 | ja_JP.UTF-8       | =c/postgres          +
           |          |                  |             |                   | postgres=CTc/postgres
(4 行)

今回はこんなかんじになりました

なお PostgreSQL コンソールを抜けるには

\q

で抜けれます

次にRedmine のインストール

sudo mkdir /var/lib/redmine
sudo chown www-data /var/lib/redmine/

で mkdir でディレクトリを作成し
chown で www-data に所有者変更

sudo -u www-data svn co http://svn.redmine.org/redmine/branches/3.4-stable /var/lib/redmine

で svn を使い
/var/lib/redmine/ 以下へダウンロード

なお svn コマンドについては
【svn】基本コマンド

を参考に

今回使った svn co はチェックアウト

次にDB接続設定

sudo vim /var/lib/redmine/config/database.yml

でファイルを作成し、中身は

production:
  adapter: postgresql
  database: redmine
  host: localhost
  username: redmine
  password: "redmineDBのパスワード"
  encoding: utf8

としておく

次にRedmine の設定ファイルの作成
これはサンプルを書き換えて作成するので

cd /var/lib/redmine/config/
sudo cp configuration.yml.example configuration.yml

でファイルをコピーして

 sudo vim configuration.yml

でファイルを開き

production:
  email_delivery:
    delivery_method: :smtp
    smtp_settings:
      address: "localhost"
      port: 25
      domain: 'example.com'

  rmagick_font_path: /usr/share/fonts/truetype/takao-gothic/TakaoPGothic.ttf

として保存

次に redmineの gem のインストール

cd /var/lib/redmine/
sudo -u www-data bundle install --without development test --path vendor/bundle

次にセッション改ざん防止秘密鍵作成

sudo -u www-data bundle exec rake generate_secret_token 

次にDBテーブル作成

sudo -u www-data RAILS_ENV=production bundle exec rake db:migrate

次にデフォルトデータ登録

sudo -u www-data RAILS_ENV=production REDMINE_LANG=ja bundle exec rake redmine:load_default_data

次に Passenger のインストール

sudo gem install passenger --no-rdoc --no-ri

Passenger Apacheモジュールインストール

 sudo passenger-install-apache2-module --auto --languages ruby

次に apache用設定ファイルの確認

passenger-install-apache2-module --snippet

内容は

LoadModule passenger_module /var/lib/gems/2.3.0/gems/passenger-5.1.12/buildout/apache2/mod_passenger.so
<IfModule mod_passenger.c>
  PassengerRoot /var/lib/gems/2.3.0/gems/passenger-5.1.12
  PassengerDefaultRuby /usr/bin/ruby2.3
</IfModule>

となりました

次に Apache の設定

 sudo vim /etc/apache2/conf-available/redmine.conf

でファイルを作成し

<Directory "/var/lib/redmine/public">
  Require all granted
</Directory>

LoadModule passenger_module /var/lib/gems/2.3.0/gems/passenger-5.1.12/buildout/apache2/mod_passenger.so
<IfModule mod_passenger.c>
  PassengerRoot /var/lib/gems/2.3.0/gems/passenger-5.1.12
  PassengerDefaultRuby /usr/bin/ruby2.3
</IfModule>

PassengerMaxPoolSize 20
PassengerMaxInstancesPerApp 4
PassengerPoolIdleTime 864000
PassengerStatThrottleRate 10

としてRedmine の画像ファイルやCSSファイルへ
アクセスを許可
これをしないと apache2.4 のデフォルト設定では
アクセス禁止になっている
そして Passenger の基本設定をコマンドの実行結果を元に記述し
Passenger のチューニング設定を追記

設定については
ttps://www.phusionpassenger.com/library/config/apache/reference/
のリファレンスを参考に

ここまでできたら apache の設定を反映

sudo a2enconf redmine 
 apache2ctl configtest 

を実行したときに

AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message

となるので

apache2再起動時にAH00558が発生する

を参考にServername を設定

hostname

でホスト名を確認
今回は
raspberrypi
だったので

cd /etc/apache2/conf-available/
sudo touch fqdn.conf
sudo vim fqdn.conf 

でファイルを作成して編集

ServerName raspberrypi

として保存し

sudo a2enconf fqdn 
sudo service apache2 restart 

として設定を反映し
apache2 を再起動したところ

Job for apache2.service failed because the control process exited with error code.
See "systemctl status apache2.service" and "journalctl -xe" for details.

となるため

journalctl -xe

で確認すると

-- Unit apache2.service has begun starting up.
 1月 29 20:58:15 raspberrypi apachectl[24661]: [Mon Jan 29 20:58:15.640734 2018] [so:warn] [pid 24664:tid 1996165120] AH01574: module p
 1月 29 20:58:15 raspberrypi apachectl[24661]: (98)Address already in use: AH00072: make_sock: could not bind to address [::]:80
 1月 29 20:58:15 raspberrypi apachectl[24661]: (98)Address already in use: AH00072: make_sock: could not bind to address 0.0.0.0:80
 1月 29 20:58:15 raspberrypi apachectl[24661]: no listening sockets available, shutting down
 1月 29 20:58:15 raspberrypi apachectl[24661]: AH00015: Unable to open logs
 1月 29 20:58:15 raspberrypi apachectl[24661]: Action 'start' failed.
 1月 29 20:58:15 raspberrypi apachectl[24661]: The Apache error log may have more information.
 1月 29 20:58:15 raspberrypi systemd[1]: apache2.service: Control process exited, code=exited status=1
 1月 29 20:58:15 raspberrypi systemd[1]: Failed to start The Apache HTTP Server.
-- Subject: Unit apache2.service has failed
-- Defined-By: systemd
-- Support: https://www.debian.org/support
-- 
-- Unit apache2.service has failed.
-- 
-- The result is failed.
 1月 29 20:58:15 raspberrypi systemd[1]: apache2.service: Unit entered failed state.
 1月 29 20:58:15 raspberrypi systemd[1]: apache2.service: Failed with result 'exit-code'.
 1月 29 20:58:15 raspberrypi sudo[24652]: pam_unix(sudo:session): session closed for user root
 1月 29 21:05:01 raspberrypi CRON[25108]: pam_unix(cron:session): session opened for user root by (uid=0)
 1月 29 21:05:01 raspberrypi CRON[25112]: (root) CMD (command -v debian-sa1 > /dev/null && debian-sa1 1 1)
 1月 29 21:05:01 raspberrypi CRON[25108]: pam_unix(cron:session): session closed for user root

すでに Gitlab を設定しているため
サブディレクトリで Redmine を実行するように設定を変更

sudo vim /etc/apache2/conf-available/redmine.conf 

でファイルを開き

Alias /redmine /var/lib/redmine/public
<Location /redmine>
  PassengerBaseURI /redmine
  PassengerAppRoot /var/lib/redmine
</Location>

を最終行に追記し保存

sudo service apache2 reload 

としたけど

apache2.service is not active, cannot reload.

となってしまう

sudo ln -s /var/lib/redmine/public /var/www/html/redmine

でシンボリックリンクを作成し

RackBaseURI /redmine

 /etc/apache2/conf-available/redmine.conf 

の最終行へ追記してもエラー

再度

apachectl configtest

を実行すると

AH01574: module passenger_module is already loaded, skipping

とエラーが変化

systemctl status apache2.service

でエラーをみたところ

(98)Address already in use: AH00072: make_sock

とあり
検索すると
エラーメッセージとその対処あれこれ

によればポートの競合が原因

おそらく GitLab で使っているポートと重複するのが
原因

このため Gitlab の ポートを変更することに

sudo vim /etc/gitlab/gitlab.rb 

で設定ファイルを開き

13行目あたりの

external_url 'http://raspberrypi'

の部分を

external_url 'http://raspberrypi:7000'

として
7000版ポートを使うように変更
変更の方法については
GitLab 8.2 + HTTPS 設定メモ(CentOS7)

https://blog.apar.jp/linux/3555/#GitLab_HTTPS

を参考にしました

しかし、これでもダメなため
Gitlab Redmine 共存環境で検索し

sudo vim /etc/gitlab/gitlab.rb 

で設定ファイルを開き

444行目の

#gitlab_workhorse['auth_backend'] = "http://localhost:8080"

506行目の

#unicorn['port'] = 8080

のコメントアウトを削除し

744行目の

#nginx['listen_port'] = nil

nginx['listen_port'] = 8080

へ変更

設定反映のため

sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart

としたけどダメ

このため、一度これらの設定を元に戻す

ラズパイにRedmine3をインスールする。そして地獄を見る。また。。。

を参考に設定ファイルを変更

sudo apt-get install -y libapache2-mod-passenger imagemagick libmagick++-dev libmagickcore-dev libmagickwand-dev apache2-dev libcurl4-openssl-dev libapr1-dev libaprutil1-dev

でパッケージを追加し

sudo swapon -s

でswap容量を確認

これで100Mしかないため

sudo service dphys-swapfile stop

で一度とめて

sudo vim /etc/dphys-swapfile

でファイルを開き
16行目あたりの

CONF_SWAPSIZE=100

CONF_SWAPSIZE=2048

へ変更し

sudo service dphys-swapfile start

で再起動

次に

sudo vim /etc/apache2/conf-available/redmine.conf 

で内容が

<Directory "/var/lib/redmine/public">
  Require all granted
</Directory>

RackBaseURI /redmine

であることを確認し

 sudo cp /etc/apache2/conf-enabled/redmine.conf redmine.conf_bak

ですでに存在するファイルをバックアップしてから

sudo rm /etc/apache2/conf-enabled/redmine.conf 

で削除し

sudo ln -s /etc/apache2/conf-available/redmine.conf /etc/apache2/conf-enabled/redmine.conf 

でシンボリックリンク作成して

sudo vim /etc/apache2/mods-available/passenger.conf

を実行すると

<IfModule mod_passenger.c>
  PassengerRoot /usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini
  PassengerDefaultRuby /usr/bin/ruby
</IfModule>

となっているので
この下へ

PassengerResolveSymlinksInDocumentRoot on
PassengerInstanceRegistryDir /var/run/passenger-instreg


追記し保存

sudo vim /etc/apache2/mods-available/passenger.load

でファイルを開くと

LoadModule passenger_module /usr/lib/apache2/modules/mod_passenger.so

となっていた

sudo a2enconf redmine
apache2ctl configtest
sudo service apache2 restart 

でエラーはないけど
redmine へアクセスしようとしてもディレクトリ構造だけ

passenger-status

を実行すると

ERROR: Phusion Passenger doesn't seem to be running. If you are sure that it is running, then the causes of this problem could be:

1. You customized the instance registry directory using Apache's PassengerInstanceRegistryDir option, Nginx's passenger_instance_registry_dir option, or Phusion Passenger Standalone's --instance-registry-dir command line argument. If so, please set the environment variable PASSENGER_INSTANCE_REGISTRY_DIR to that directory and run passenger-status again.
2. The instance directory has been removed by an operating system background service. Please set a different instance registry directory using Apache's PassengerInstanceRegistryDir option, Nginx's passenger_instance_registry_dir option, or Phusion Passenger Standalone's --instance-registry-dir command line argument.

となるため、
これで検索

[CentOS] Redmineのインストールメモ

によれば

sudo mkdir /var/run/passenger-instreg


httpd.conf」に以下を追加
とあったけど

sudo vim /etc/apache2/apache2.conf 

で開いても項目が見当たらないため

再度コマンド履歴をみたところ

/etc/apache2/mods-enabled/passenger.load

がシンボリックリンクになっていないため

sudo cp /etc/apache2/mods-enabled/passenger.load .

でバックアップし

sudo rm /etc/apache2/mods-enabled/passenger.load


ファイルを削除して

sudo ln -s /etc/apache2/mods-available/passenger.load /etc/apache2/mods-enabled/passenger.load

でシンボリックリンクを作成し

sudo service apache2 restart 

とすると
ようやく redmine が起動しました


PDF
カテゴリー: RaspberryPi3, Redmine | コメントをどうぞ

ラズパイ3に Gmail リレー設定

ラズパイ3に Gmail リレー設定

ズパイに Postfixメールサーバーを立てる方法(Gmailをリレーとして使用)

を参考に設定

まず必要なパッケージのインストール

 sudo apt-get install mailutils

次に
GmailリレーサーバにするためPostfixの設定を編集

sudo vim /etc/postfix/main.cf

でファイルを開き
shift + G で最終行に移動

:set number
で行番号がでるので
39 行目の
relayhost =
をコメントアウト

あとは
カーソルを 39 行目に合わせるか
:39で39行目に移動し
shift + i # でコメントアウト

複数行のコメントアウトは
vimで一気にコメントアウトする方法(複数行の先頭に文字を追加する方法)

を参考に

あとはファイルの最後に

# Relaying Postfix SMTP via GMAIL
relayhost = [smtp.gmail.com]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_tls_CAfile = /etc/postfix/cacert.pem
smtp_use_tls = yes

を追記し
esc を押して
:wq で保存

次にGmailのアカウント情報を設定するファイルを作成

sudo vim /etc/postfix/sasl_passwd

構文は

[smtp.gmail.com]:587 Gmailアドレス:Gmailパスワード

なお、Gmail のパスワードは2段階認証をしている場合
安全性の低いアプリの許可はできないため
アプリパスワードを作成し
このパスワードを設定する必要があります

次に sasl_passwd の設定

sudo chmod 400 /etc/postfix/sasl_passwd 

で権限変更

Postfix が参照するデータベースファイルへ
反映するので
postmap コマンドを実行

sudo postmap /etc/postfix/sasl_passwd 

smtp.gmail.comの
ルート認証局(Root CA)をダウンロードして配置
するので wget で取得

 wget https://www.thawte.com/roots/thawte_Premium_Server_CA.pem

次に tee コマンドに -a オプションをつけることでファイルに追記
tee コマンドについては
teeコマンドの使い方

を参考に

cat ./thawte_Premium_Server_CA.pem | sudo tee -a /etc/postfix/cacert.pem

ここまでできたらテストメールの送信をするので

sudo service postfix restart 

で postfix の再起動

echo "Hello World" | mail -s "Test Message" 送信したいメルアド

としてメールが届けば成功です

もし届かない場合

tail /var/log/mail.log


Gmail のサポートのURLが表示されるので
これをもとにアプリパスワードを設定し

sudo vim /etc/postfix/sasl_passwd
sudo postmap /etc/postfix/sasl_passwd
sudo service postfix restart

でパスワードを変更し
DB更新してから postfix を再起動し
再度送信テストをしてみましょう


PDF
カテゴリー: RaspberryPi3 | コメントをどうぞ

ラズパイ3を Gitサーバに

ラズパイ3を Gitサーバに

まずは ssh でログインしてIPを固定しておきます

 sudo apt-get install vim

で vim をインストール

次に

interface eth0
static ip_address=192.168.1.208/24
static routers=192.168.1.1
static domain_name_servers=192.168.1.1

というように IPの設定をファイル末尾に追記して保存

固定IPについては
固定IPアドレスの設定(有線LANの場合)

を参考に

固定IPで接続できるかは

sudo shutdown -r now

で再起動し
ssh で接続できれば成功

次にリポジトリの更新と
インストール済みソフトのアップデート

sudo apt-get update 
sudo apt-get -y upgrade

次に git サーバに必要なライブラリのインストール

sudo apt-get -y install wget git-core 

次に gitユーザを作成
このユーザで gitサーバにアクセスするようにする

sudo adduser git

なおパスワード設定の後に
フルネーム []:
部屋番号 []:
職場電話番号 []:
自宅電話番号 []:
その他 []:
がでるけど
そのまま Enter でOK

以上で正しいですか? [Y/n]
とでたら、 y を入力

次にテストリポジトリの作成

 su git

で gitユーザのパスワードをいれて git ユーザになり

cd

で git ユーザのホームディレクトリに移動

mkdir -p ./git_root/test.git

でテストリポジトリのディレクトリ作成

次に空リポジトリの作成
.4 Git サーバー – サーバーのセットアップ

にあるように
作業ディレクトリのない空のリポジトリを初期化
したいので
git init に –bare オプションを指定して実行

cd ./git_root/test.git/
git init --bare
git init

次に GitLab のインストール
GitLab に必要なパッケージを入れるので

sudo apt-get install curl openssh-server ca-certificates postfix apt-transport-https

途中で postfix の画面がでてくるので
tab を押して
了解
で Enter

piGitlab

メール設定の形式は
インターネットサイト
を選択し
了解で Enter

piGitlab2

システムメール名は
デフォルトの raspberrypi のままでOK

Gitlab3

次に GitLab の gpg.key を追加

curl https://packages.gitlab.com/gpg.key | sudo apt-key add -

次に Gitlab パッケージのインストール

sudo curl -sS https://packages.gitlab.com/install/repositories/gitlab/raspberry-pi2/script.deb.sh | sudo bash

そして GitLab CE Omnibus package
のインストール

sudo apt-get install gitlab-ce

を実行してもパッケージがみつからないため

Turning the RaspberryPi 3 into a local App-Development Server

の中の
If you are not comfortable installing the repository through a piped script, you can find the entire script here and select and download the package manually and install using
を参考にパッケージをダウンロードし
インストールすることに

lsb_release -a

を実行するとバージョンを調べることができる

No LSB modules are available.
Distributor ID:	Raspbian
Description:	Raspbian GNU/Linux 9.3 (stretch)
Release:	9.3
Codename:	stretch

が今回の結果なので
stretch 対応のものを
https://packages.gitlab.com/gitlab/gitlab-ce
からダウンロード

今回は
ubuntu 14.04 へ
gitlab-ce_10.3.3-ce.0_amd64.deb
をダウンロード

そして

 scp gitlab-ce_10.3.3-ce.0_amd64.deb pi@192.168.1.208:/home/pi/

でファイルを転送

scp コマンドについては
scpコマンドでファイル送る、とってくる

を参考に

次に ラズパイ3で

sudo dpkg -i gitlab-ce_10.3.3-ce.0_amd64.deb

としたけど
アーキテクチャが違うため
インストール不可

このため、再度 Google で検索し
2017年7月以降のもので検索

GitLab on the Raspberry Pi 3

を参考に

curl https://packages.gitlab.com/gpg.key | sudo apt-key add -
sudo curl -o /etc/apt/sources.list.d/gitlab_ce.list "https://packages.gitlab.com/install/repositories/gitlab/raspberry-pi2/config_file.list?os=debian&dist=jessie" && sudo apt-get update

を実行し

sudo apt-get install gitlab-ce

でインストールできた

これで

sudo gitlab-ctl reconfigure

で初期設定できる

あとは

http://192.168.1.208/

というように
ラズパイ3のIPへブラウザでアクセスすると
GitLab の画面が表示されるので

New password に
新しいパスワードを設定し
Confirm new password

確認のため同じパスワードを入力し
Change your password
をクリック

gitlab4

これでパスワード変更が有効化されるので
ユーザ名 root
パスワードを設定したもので
Sign in をクリック

gitlab5

これで Gitlab へログインできます

gitlab6


PDF
カテゴリー: Gitlab, RaspberryPi3 | コメントをどうぞ

raspberry Pi3 の ssh 有効化

raspberry Pi3 の ssh 有効化

Raspberry Pi3 あデフォルト設定では ssh が無効化されているため有効化する必要がある

参考サイトは
Raspberry Pi 3(ラズパイ3)にSSHでリモート接続

RaspberryPi3 を起動し
ctrl + alt + t で端末を開けるので

sudo mkdir /boot/ssh
reboot

とすると再起動され ssh が有効化される

次に IP を調べるけど
これは Android アプリの Fing を使うと簡単に調べられる
Google Play で手に入れよう

なお、おすすめのアプリがある場合
App StoreとAndroidのアプリのリンクをブログに貼る方法

を参考にアプリを紹介すると
ダウンロードしやすくなる

これであとは IP を調べて
ubuntu 側で
ctrl + alt + t で端末を開き

ssh pi@ラズパイ3のIPアドレス

なお、デフォルトの場合だと
ユーザ名 pi
パスワードは raspberry
となっている


PDF
カテゴリー: RaspberryPi3 | コメントをどうぞ

raspberyPi3 セットアップ(NOOBS)

raspberyPi3 セットアップ

公式サイトで Raspbian をダウンロードしようとすると
数時間かかるため、日本ミラーサイトからダウンロード

wget http://ftp.jaist.ac.jp/pub/raspberrypi/raspbian_lite/images/raspbian_lite-2017-09-08/2017-09-07-raspbian-stretch-lite.zip

そしてこのファイルを解凍するので

 unzip 2017-09-07-raspbian-stretch-lite.zip 

で解答すると img ファイルができるのでこれを
microSDへ書き込む

しかし、購入した64GB のものを差し込むと
64GBボリュームをマウントできませんとなるため

を参考に

sudo apt-get install exfat-utils exfat-fuse

で機能を追加

これで認識できたけど
SDカード自体は
事前にどのデバイスとして認識されているかを調べ、
アンマウントしておく必要があるため

df -h

で調べ結果が

Filesystem      Size  Used Avail Use% Mounted on
udev            3.9G  4.0K  3.9G   1% /dev
tmpfs           797M  1.4M  796M   1% /run
/dev/sda1       909G  429G  435G  50% /
none            4.0K     0  4.0K   0% /sys/fs/cgroup
none            5.0M     0  5.0M   0% /run/lock
none            3.9G   35M  3.9G   1% /run/shm
none            100M   40K  100M   1% /run/user
/dev/sdb1        60G   17M   60G   1% /media/snowpool/9C33-6BBD

なので

sudo umount /dev/sdb1 

でアンマウント

次にdd コマンドで書き込むけど
書き込みのデフォルトは 512byte で遅いので
bs オプションで速度を指定します

デフォルト速度に関しては
ddコマンドによるコピー

を参考に

sudo dd bs=32M if=2017-09-07-raspbian-stretch-lite.img of=/dev/sdb1

書き込みができたら

sudo sync

で同期させて SDカードは取り出し

しかし、この状態で microSD をさして
raspberryPi3 を起動しても動作しない

Raspberry Pi 3で安定して使える相性の無い最適な microSDカードの種類のまとめ

によるとPCのの自作のように
相性問題があるようなので
新しく Amazonで購入

しかし、これでもダメなので
Raspbian のみのインストールはあきらめ
NOOBS からインストールすることに

http://ftp.jaist.ac.jp/pub/raspberrypi/NOOBS/images/NOOBS-2017-12-01/
が 2017/12/9 時点での最新なので
これをダウンロード

ダウンロードするのは
NOOBS_v2_4_5.zip

次にこのファイルを解凍し、中身をmicroSD へコピー

 mkdir Raspberry_Pi_NOOBS
cp NOOBS_v2_4_5.zip Raspberry_Pi_NOOBS/
cd Raspberry_Pi_NOOBS/
unzip NOOBS_v2_4_5.zip
cd ../
cp -rp  Raspberry_Pi_NOOBS/* /media/snowpool/0403-0201/

これでインストールメディアが完成

ddコマンドで作成するより簡単で
microSD フォーマットも不要なので
作成方法としてはかなり楽

あとは、この microSD を RaspberryPi3 に差し込み
HDMIでモニターへ接続
usb でのキーボード、マウス
をセットしたらスイッチをいれればインストール画面に

なお、本体だけだと面倒だったので
Amazon でスターターキットが販売されていたので
これで電源やケースも一緒に購入

なお、microSD に関しては失敗したときのことと、
今後の用途にも使うために複数購入

なお、インストール画面では
使用言語を日本語にして
インストールをクリックするだけでOK


PDF
カテゴリー: RaspberryPi3 | コメントをどうぞ

kintone 開発者ライセンスの取得

kintone 開発者ライセンスの取得

11月18日のKintoneセミナーで
kintone 開発者ライセンスが必要になるので
Chrome とライセンスの設定をすることに

https://developer.cybozu.io/hc/ja/articles/200929540#step3

へアクセスし

下へスクロールして
開発者ライセンスを申し込むをクリック

kintone

登録には facebook もしくはメルアドで可能
今回はメルアドを使いますので
アカウント登録をクリック

kintone2

名前とメルアドを入力し
渡しはロボットではありませんをクリック

kintone3

これでリンク付きのメールがくるので
メール内容の一番下のリンク
をクリックし登録画面でパスワード設定

kintone4[

これで、cybozu developer network の登録ができたので
引き続き、開発者ライセンスの取得

トップページのスライドで
無償の開発者ライセンス
と書かれているスライドをクリックすると
開発者ライセンス申し込みの画面がでてくるので

開発者ライセンスを申し込むをクリック

kintone6

kintone

下までスクロールすると、申し込み画面があるので
内容を入力し確認するをクリック

kintone8

これで30分ほど待てばメール宛に届くらしいので
しばらくは待機します

kintone9[


PDF
カテゴリー: kintone | コメントをどうぞ

bootstrap で画像とメッセージを表示 その2

bootstrap で画像とメッセージを表示 その2

せっかくなので、レスポンシブ対応の画像も追加
レスポンシブ対応するには
class=”img-fluid” を設定すればOK

今回は

<img src="image1.jpg" alt="" class="img-fluid">

としてみた

古い情報だと
.img-responsive と書かれているので注意
変更点については
https://getbootstrap.com/docs/4.0/migration/#images
に記載あり

次にグリッドシステムで配置を調整
emmet で書くと

  div.container>div.row>div.col-md-8.col-md-offset-2

これをtab で展開すると

  <div class="container">
    <div class="row">
      <div class="col-md-8 col-md-offset-2">
        
      </div>
    </div>
  </div>

となるので、ここへ .media 部分のコードを移動

これで

  <div class="container">
    <div class="row">
      <div class="col-md-8 col-md-offset-2">
        <div class="media">
        <img class="d-flex mr-3  rounded-circle" src="image2.jpeg" alt="Generic placeholder image" width="64" height="64">
        <div class="media-body">
          <h5 class="mt-0">Media heading</h5>
          メッセージ

          <img src="image1.jpg" alt="" class="img-fluid">
          <div class="media">
          <img class="d-flex mr-3  rounded-circle" src="image2.jpeg" alt="Generic placeholder image" width="64" height="64">
          <div class="media-body">
            <h5 class="mt-0">Media heading その2</h5>
            メッセージ その2
          </div>
        </div>
      </div>
      </div>
      </div>
    </div>
  </div>

というかんじに

これで余白が調整され、中央にコンテンツ表示に

mbs4

次に画面上部にナビゲーションバーの設置

  <nav class="navbar navbar-light bg-light">
    <form class="form-inline">
      <input class="form-control mr-sm-2" type="text" placeholder="Search" aria-label="Search">
      <button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button>
    </form>
  </nav>

を追加

これで上部に検索欄とボタンが設置される

mbs5

今回のソースは

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <!-- Bootstrap CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css" integrity="sha384-/Y6pD6FV/Vv2HJnA6t+vslU6fwYXjCFtcEpHbNJ0lyAFsXTsjBbfaDjzALeQsN6M" crossorigin="anonymous">
  <title>Document</title>
</head>
<body>

  <nav class="navbar navbar-light bg-light">
    <form class="form-inline">
      <input class="form-control mr-sm-2" type="text" placeholder="Search" aria-label="Search">
      <button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button>
    </form>
  </nav>

  <div class="container">
    <div class="row">
      <div class="col-md-8 col-md-offset-2">

        
        <div class="media">
        <img class="d-flex mr-3  rounded-circle" src="image2.jpeg" alt="Generic placeholder image" width="64" height="64">
        <div class="media-body">
          <h5 class="mt-0">Media heading</h5>
          メッセージ

          <img src="image1.jpg" alt="" class="img-fluid">
          <div class="media">
          <img class="d-flex mr-3  rounded-circle" src="image2.jpeg" alt="Generic placeholder image" width="64" height="64">
          <div class="media-body">
            <h5 class="mt-0">Media heading その2</h5>
            メッセージ その2
          </div>
        </div>
      </div>
      </div>
      </div>
    </div>
  </div>



<!-- Optional JavaScript -->
<!-- jQuery first, then Popper.js, then Bootstrap JS -->
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js" integrity="sha384-b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1" crossorigin="anonymous"></script>

</body>
</html>

PDF
カテゴリー: bootstrap | コメントをどうぞ

bootstrap で画像とメッセージの表示

bootstrap で画像とメッセージの表示

Atom エディタを使い
左に画像、右に文章というtwitter のようなかんじで表示

media.html というファイルを作成し

html:5

でtab で展開すると

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>
  
</body>
</html>

というコードが一気に作成できる

次にbootstrap の css を適用するために

    <!-- Bootstrap CSS -->
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css" integrity="sha384-/Y6pD6FV/Vv2HJnA6t+vslU6fwYXjCFtcEpHbNJ0lyAFsXTsjBbfaDjzALeQsN6M" crossorigin="anonymous">

を head の中へ記述

また javascript や jquery 関連を読み込む必要があるので

    <!-- Optional JavaScript -->
    <!-- jQuery first, then Popper.js, then Bootstrap JS -->
    <script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js" integrity="sha384-b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4" crossorigin="anonymous"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1" crossorigin="anonymous"></script>

を body の閉じタグの前に記述

次に画像と文章の表示
https://getbootstrap.com/docs/4.0/layout/media-object/
にサンプルコードがリファレンスとして載っているので
これを参考に貼り付け

  <div class="media">
  <img class="d-flex mr-3" src="..." alt="Generic placeholder image">
  <div class="media-body">
    <h5 class="mt-0">Media heading</h5>
    Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.
  </div>
</div>

のままだと長い上に画像がないので
src=”…” の部分には画像ファイルを指定し
文章は簡単なものに変更

せっかくなので画像を丸くしておきたいので

class=" rounded-circle" 

を画像に指定

元の大きさだと大きすぎなので

width="64" height="64"

で縦横を調整

表示エリアを

<div class="media">
</div>

で決めて、その中に記述する

今回のソースは

  <div class="media">
  <img class="d-flex mr-3  rounded-circle" src="image2.jpeg" alt="Generic placeholder image" width="64" height="64">
  <div class="media-body">
    <h5 class="mt-0">Media heading</h5>
    メッセージ
  </div>
</div>

というかんじ

これで左に画像、右に文章になる

mbs

そして

<div class="media-body">
</div>

が1つのメディア単位になっている
つまり、 media-body の中に media を用意すると入れ子になる

<div class="media">
  <img class="d-flex mr-3  rounded-circle" src="image2.jpeg" alt="Generic placeholder image" width="64" height="64">
  <div class="media-body">
    <h5 class="mt-0">Media heading</h5>
    メッセージ
    <div class="media">
    <img class="d-flex mr-3  rounded-circle" src="image2.jpeg" alt="Generic placeholder image" width="64" height="64">
    <div class="media-body">
      <h5 class="mt-0">Media heading その2</h5>
      メッセージ その2
    </div>
  </div>
</div>

とすると入れ子になる

mbs2

とりあえず全体のソースとしては

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <!-- Bootstrap CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css" integrity="sha384-/Y6pD6FV/Vv2HJnA6t+vslU6fwYXjCFtcEpHbNJ0lyAFsXTsjBbfaDjzALeQsN6M" crossorigin="anonymous">
  <title>Document</title>
</head>
<body>
  <div class="media">
  <img class="d-flex mr-3  rounded-circle" src="image2.jpeg" alt="Generic placeholder image" width="64" height="64">
  <div class="media-body">
    <h5 class="mt-0">Media heading</h5>
    メッセージ
    <div class="media">
    <img class="d-flex mr-3  rounded-circle" src="image2.jpeg" alt="Generic placeholder image" width="64" height="64">
    <div class="media-body">
      <h5 class="mt-0">Media heading その2</h5>
      メッセージ その2
    </div>
  </div>
</div>

<!-- Optional JavaScript -->
<!-- jQuery first, then Popper.js, then Bootstrap JS -->
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js" integrity="sha384-b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1" crossorigin="anonymous"></script>

</body>
</html>
1

というかんじ


PDF
カテゴリー: bootstrap | コメントをどうぞ

Gitlab のインストール

Gitlab のインストール

2年ぶりに Gitlab のインストール
いろいろと変更がありそうなので
GitLab Installation

を参考にインストール

sudo apt-get install -y curl openssh-server ca-certificates

次にメールサーバーのインストール

sudo apt-get install -y postfix

を実行すると確認画面がでるので、tabを押して
了解で Enter

2017gitlab

次に、どの形式にするか選択がでるけど
ドキュメントには
During Postfix installation a configuration screen may appear. Select ‘Internet Site’ and press enter. Use your server’s external DNS for ‘mail name’ and press enter. If additional screens appear, continue to press enter to accept the defaults.

意味は
Postfixのインストール中に、設定画面が表示されることがあります。 [インターネットサイト]を選択し、Enterキーを押します。サーバーの外部DNSを「メール名」に使用し、Enterキーを押します。追加の画面が表示された場合は、enterを押してデフォルトを受け入れます。

となっているので
インターネット上サイトのまま
tabを押して了解で Enter

2017gitlab2

次にメール名だけど、ローカルのみの予定なので
今回はそのまま tab を押して 了解で
Enter

2017gitlab3

次に Gitlab リポジトリを追加するので

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

次に

sudo apt-get install gitlab-ce

で Gitlab インストール

インストールされると

gitlab: Thank you for installing GitLab!
gitlab: To configure and start GitLab, RUN THE FOLLOWING COMMAND:

sudo gitlab-ctl reconfigure

gitlab: GitLab should be reachable at http://snowpool-Prime-Series
gitlab: Otherwise configure GitLab for your system by editing /etc/gitlab/gitlab.rb file
gitlab: And running reconfigure again.
gitlab: 
gitlab: For a comprehensive list of configuration options please see the Omnibus GitLab readme
gitlab: https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.md
gitlab: 
It looks like GitLab has not been configured yet; skipping the upgrade script.
W: Duplicate sources.list entry http://download.opensuse.org/repositories/isv:/ownCloud:/community/xUbuntu_14.04/  Packages (/var/lib/apt/lists/download.opensuse.org_repositories_isv:_ownCloud:_community_xUbuntu%5f14.04_Packages)

と表示される

Gitlab の初期設定と開始には

sudo gitlab-ctl reconfigure

を実行

これで

http://snowpool-prime-series:8080/

だとアクセスできず、

http://localhost:8080

ではレイアウトが崩れる

2017gitlab4

このため

sudo vim /etc/gitlab/gitlab.rb 

で設定ファイルを開き

13行目の

external_url 'http://snowpool-Prime-Series'

external_url 'http://192.168.1.206:8000'

というように変更し

sudo gitlab-ctl reconfigure

を実行し設定を反映

これで再度アクセスすると無事にCSSが反映されていた
2017gitlab5


PDF
カテゴリー: Gitlab | コメントをどうぞ