Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

laradockの導入 #1

Closed
nsuzuki7713 opened this issue Feb 10, 2019 · 16 comments
Closed

laradockの導入 #1

nsuzuki7713 opened this issue Feb 10, 2019 · 16 comments
Assignees

Comments

@nsuzuki7713
Copy link
Member

No description provided.

@TsutomuNakamura
Copy link
Member

Laravel のコンテナ。
http://laradock.io/

@TsutomuNakamura
Copy link
Member

sudo docker-compose up -d nginx mysql workspace

## nginx configの変更
cp nginx/sites/default.conf nginx/sites/default.conf.bak
vim nginx/sites/default.conf


## workspace コンテナにログインしてlaravel プロジェクト作成
docker-compose exec workspace bash
    composer create-project laravel/laravel a6s-cloud
    chown -R laradock:laradock a6s-cloud

@TsutomuNakamura
Copy link
Member

TsutomuNakamura commented Feb 10, 2019

前回のコメントに足りない部分があったので追加しました。
以下のコマンドを実行すればひとまず、Laravel の環境はできるかと思います。

git submodule update --init --recursive

cd laradock
cp env-example .env
docker-compose up -d nginx mysql workspace

## Laravel プロジェクトの作成(laradock ユーザのログインシェルが/bin/bash であること想定)
docker-compose exec workspace runuser -l laradock -c 'cd /var/www; if [ ! -d a6s-cloud ]; then composer create-project laravel/laravel a6s-cloud; else echo "Do nothing"; fi'

## nginx configの変更
cp nginx/sites/default.conf nginx/sites/default.conf.bak
cp nginx/sites/laravel.conf.example default.conf
sed -i.backup -e 's|\(.*root\) .*/var/www/public.*|\1 /var/www/a6s-cloud/public;|g' nginx/sites/default.conf
## 変更差分を確認する
diff -u nginx/sites/default.conf.backup nginx/sites/default.conf

## コンテナを再起動する
docker-compose stop && docker-compose up -d nginx mysql workspace

## 状態を確認する
docker-compose ps
>            Name                          Command              State                    Ports
> --------------------------------------------------------------------------------------------------------------
> laradock_docker-in-docker_1   dockerd-entrypoint.sh           Up      2375/tcp
> laradock_mysql_1              docker-entrypoint.sh mysqld     Up      0.0.0.0:3306->3306/tcp, 33060/tcp
> laradock_nginx_1              /bin/bash /opt/startup.sh       Up      0.0.0.0:443->443/tcp, 0.0.0.0:80->80/tcp
> laradock_php-fpm_1            docker-php-entrypoint php-fpm   Up      9000/tcp
> laradock_workspace_1          /sbin/my_init                   Up      0.0.0.0:2222->22/tcp

ブラウザで確認

ブラウザを開いて
http://localhost
を開くとLaravel の画面が見れるはずです。

今後のバックエンド側の作業について

リポジトリのroot にa6s-cloud ディレクトリができて、そのディレクトリがdocker-compose のworkspace (docker ps コマンドの場合はlaradock_workspace_1)コンテナの/var/www/a6s-cloud に繋がっているようなので、そこのソースファイルを更新しながらlaravel の開発をしていくのはどうかと!?

@TsutomuNakamura
Copy link
Member

コマンドにあるsudo はMac 環境では必要ないかもしれません…。
ちょっと明日あたりに数年前のMac book air があるので、それで動作確認だけしてみます。

@TsutomuNakamura
Copy link
Member

git clone ${URL}
cd a6s-cloud-backend
./build.sh

だけで環境構築できるようにしておきました。

@nsuzuki7713
Copy link
Member Author

download

@TsutomuNakamura
Copy link
Member

🤩
みなさんの環境で試してみて、特に問題ないようであればクローズしてしまおうと思います。
時間ある時にお試しお願いします。

@tokidrill tokidrill self-assigned this Feb 16, 2019
@tokidrill
Copy link
Collaborator

$ git clone ~~~
$ cd a6s-cloud-backend
$ ./build.sh

僕の環境ではうまくいかない。
下記、build中の標準出力。

 $ ./build.sh
/usr/local/bin/docker
/usr/local/bin/docker-compose
Submodule 'laradock' (https://github.com/Laradock/laradock.git) registered for path 'laradock'
Cloning into '/Users/yukisasaki/dev/a6s-cloud-backend/laradock'...
Submodule path 'laradock': checked out 'fc3355a9cc906e74111d44a476322ddf7da5d0b6'
Starting laradock_mysql_1 ...
laradock_docker-in-docker_1 is up-to-date
laradock_workspace_1 is up-to-date
laradock_php-fpm_1 is up-to-date
Starting laradock_mysql_1 ... done
cd: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
sh: 0: getcwd() failed: No such file or directory
Installing laravel/laravel (v5.7.19)


  [ErrorException]
  mkdir(): No such file or directory    # こいつが悪い気がするのでデバッグなう


create-project [-s|--stability STABILITY] [--prefer-source] [--prefer-dist] [--repository REPOSITORY] [--repository-url REPOSITORY-URL] [--dev] [--no-dev] [--no-custom-installers] [--no-scripts] [--no-progress] [--no-secure-http] [--keep-vcs] [--remove-vcs] [--no-install] [--ignore-platform-reqs] [--] [<package>] [<directory>] [<version>]

~後略~

@tokidrill
Copy link
Collaborator

cd: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory

その前にこいつか。

@tokidrill
Copy link
Collaborator

laradock@d5fed6bbde6a:~$ cd /var/www
cd: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory

よし見つけた。workspaceコンテナにログインしたあとのcdコマンドで失敗している模様。

@tokidrill
Copy link
Collaborator

どうやらこれはクリティカルなerrorではなさそう。
ちゃんとディレクトリを移動していることを確認。

@tokidrill
Copy link
Collaborator

laradock@d5fed6bbde6a:/var/www$ ls
ls: cannot open directory '.': No such file or directory

ちょっとまてよ。
ディレクトリが開けない…?

laradock@d5fed6bbde6a:/var$ ls -la
ls: cannot access 'www': No such file or directory
total 44
drwxr-xr-x 1 root root  4096 Feb 16 11:32 .
drwxr-xr-x 1 root root  4096 Feb 16 12:06 ..
drwxr-xr-x 2 root root  4096 Apr 12  2016 backups
drwxr-xr-x 1 root root  4096 Apr  6  2018 cache
drwxr-xr-x 1 root root  4096 Apr  6  2018 lib
drwxrwsr-x 2 root staff 4096 Apr 12  2016 local
lrwxrwxrwx 1 root root     9 Jan 23  2018 lock -> /run/lock
drwxr-xr-x 1 root root  4096 Feb 16 12:06 log
drwxrwsr-x 2 root mail  4096 Jan 23  2018 mail
drwxr-xr-x 2 root root  4096 Jan 23  2018 opt
lrwxrwxrwx 1 root root     4 Jan 23  2018 run -> /run
drwxr-xr-x 1 root root  4096 Jan 26  2018 spool
drwxrwxrwt 2 root root  4096 Jan 23  2018 tmp
d????????? ? ?    ?        ?            ? www

おお、原因っぽいもの発見。
たぶん最初はwwwディレクトリが作られていないのだろう。

@tokidrill
Copy link
Collaborator

#15 で検討用のチケットを切りました。

@nsuzuki7713
Copy link
Member Author

これも閉じられる??

@TsutomuNakamura
Copy link
Member

閉じられると思います!!

@nsuzuki7713
Copy link
Member Author

一番最初に作られたissueをついにclose

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants