Spring boot Docker †git clone https://github.com/spring-guides/gs-spring-boot-docker.git cd gs-spring-boot-docker/complete mvn package #mvn mkdir -p target/dependency && (cd target/dependency; jar -xf ../*.jar) # gradle mkdir -p build/dependency && (cd build/dependency; jar -xf ../libs/*.jar) docker build -t springio_xxx . docker run -p 8080:8080 -t springio_xxx Dockerfile †
リソース制限 †CPU †
実験結果 †
はまりどころ †
33306:3306 ${HOME}/.aws/credentials:/home/spring/.aws/credentials:ro コマンド †
インストール †
Docker build †デフォルトのファイル名なら-f不要。-tでイメージ名 ./そこにあるパスから指定されたファイルを探すと言うもの docker build -f Dockerfile-xxx -t mydocker ./ docker run mydocker Docker toolbox †若干時代遅れ感があるが、Windows10以外の場合はこれしかない。仮想マシンを介してDockerを操作する。仮想マシンのIPはデフォルト192.168.99.100になる。アクセスする場合もこのIPを利用する。 docker run -d --name httpd -p 80:80 httpd kitematic †GUIツールだが、最近の情報がないのであまり使われてない印象。 ミドルウェアを使ってみる †Jenkins †docker pull jenkins/jenkins:lts cd /tmp tfujiinoMacBook-Pro:tmp t_fujii$ docker run -d -v `pwd`/jenkins_home: /var/jenkins_home -p 8080:8080 -p 50000:50000 jenkins/jenkins:lts /tmpとかじゃないとエラーが出る! Docker volume †実態はホストの/var/lib/docker/volumes/ボリューム名にある。macの場合は仮想マシン上で動いているため以下のコマンドで接続する。 docker run -it --privileged --pid=host debian nsenter -t 1 -m -u -n -i sh ボリュームはコンテナ停止中だと削除できないので、docker rmした後に削除する。 コマンド一覧 †
Volume copy †新しいボリューム(new_volume)を作成して、古いもの(old_volume)からCOPYする。 docker volume create --name new_volume
docker container run --rm -it -v old_volume:/from -v new_volume:/to alpine ash -c "cd /from ; cp -av . /to" Docker compose †
nginxをローカルボリュームにマウントする †https://takatorix.hatenablog.com/entry/2017/04/27/012516 用語集 †
いろいろ試してみる †共通手順 †
オプション †
Dockerの内部にbashで接続 †docker exec -it コンテナID bash そのほかにもport, top,などがある。 様々なミドルウェアを試してみた †
MySQL †docker pull mysql docker run --name mysql -e MYSQL_ROOT_PASSWORD=mysql -d -p 3306:3306 mysql #停止して削除 docker stop mysql docker rm mysql
mysql -u root -pmysql Wordpress/Nginx †docker pull eugeneware/docker-wordpress-nginx docker run -p 80:80 --name docker-wordpress-nginx -d eugeneware/docker-wordpress-nginx ファイルシステムへの保存 †docker export でtarファイルへ docker importでtarファイルからdockerイメージへ ツール †Docker for Mac and Windows †2016/03現在ベータ版だが、ネイティブでDockerを動かせるというもの。Hyper-Vを利用しているためWindows10以降 Docker toolbox †VirtualBox経由のDockerを操作するがそれをひとまとめにしてくれているツール。 CentOS6(非推奨) †yum install docker-io 起動してみる †systemctl start docker Error starting daemon: Error initializing network controller: Error creating default \"bridge\" "network: package not installed"とでて失敗。OpenVZには入れられないということで終了! 基本操作 †
試しにやってみる †
トラブルシューティング †dockerのphpアプリからhostのDB接続 †
docker: you are not authorized to perform this operation: server returned 401.. †DockerImageTrustを有効にしている場合、自作のイメージは署名なしでは実行できない。 export DOCKER_CONTENT_TRUST=0で解消。 さくらのVPSにインストール †Azureの仮想マシンにインストール †Oracle on Docker † |