Dockerの勉強会を行ったときの資料

dockerとは?

hands-on

mintにcoreOSを立ててみよう

https://qiita.com/ysuzuki963/items/9bb2ceb4e86dfbc86380

sudo passwd core

超重要

openssl passwd -1
ここで出てきたハッシュ値を後述のcloud-config.ymlに貼り付ける
(さもなくばインストール語ログインできなくなる 3回やらかした私が言うので間違いない)

ifconfig
ssh core@192.168.100.xxx

cloud-config.yml

#cloud-config
hostname: CoreOS
users:
  - name: core
    passwd: ハッシュ化されたパスワード
    groups:
      - sudo
      - docker

sudo coreos-install -d /dev/sda -C stable -c cloud-config.yml

成功!

core@ip-192-168-100-226 ~ $ core@ip-192-168-100-226 ~ $ sudo coreos-install -d /dev/sda -C stable -c cloud-config.yml
2020/06/14 21:41:33 Checking availability of "local-file"
2020/06/14 21:41:33 Fetching user-data from datasource of type "local-file"
Current version of CoreOS Container Linux stable is 2512.3.0
Downloading the signature for https://stable.release.core-os.net/amd64-usr/2512.3.0/coreos_production_image.bin.bz2...
2020-06-14 21:41:34 URL:https://stable.release.core-os.net/amd64-usr/2512.3.0/coreos_production_image.bin.bz2.sig [566/566] -> "/tmp/coreos-install.RSwYIv44Ep/coreos_production_image.bin.bz2.sig" [1]
Downloading, writing and verifying coreos_production_image.bin.bz2...

2020-06-14 21:42:30 URL:https://stable.release.core-os.net/amd64-usr/2512.3.0/coreos_production_image.bin.bz2 [487343704/487343704] -> "-" [1]
gpg: Signature made Fri May 22 20:48:07 2020 UTC
gpg:                using RSA key FD986FB096482F906F55B2EA01C9CAE767B3CA0E
gpg: key 50E0885593D2DCB4 marked as ultimately trusted
gpg: checking the trustdb
gpg: marginals needed: 3  completes needed: 1  trust model: pgp
gpg: depth: 0  valid:   1  signed:   0  trust: 0-, 0q, 0n, 0m, 0f, 1u
gpg: Good signature from "CoreOS Buildbot (Offical Builds) <buildbot@coreos.com>" [ultimate]
blockdev: ioctl error on BLKRRPART: Device or resource busy
Failed to reread partitions on /dev/sda
Installing cloud-config...
Success! CoreOS Container Linux stable 2512.3.0 is installed on /dev/sda
core@ip-192-168-100-226 ~ $

sudo shutdown -r now

ESXiのコンソールでipを確認する

確認したipでsshログインする

ssh core@192.168.100.xxx

docker-composeを入れよう!

https://qiita.com/Ahijo0523/items/1d4055de7a74decd37fb
COMPOSE_VERSION=$(curl -s https://api.github.com/repos/docker/compose/releases/latest | grep 'tag_name' | cut -d\" -f4)
OUTPUT_PATH="/opt/bin"
sudo mkdir -p ${OUTPUT_PATH}
sudo curl -L "https://github.com/docker/compose/releases/download/${COMPOSE_VERSION}/docker-compose-$(uname -s)-$(uname -m)" -o ${OUTPUT_PATH}/docker-compose
sudo chmod +x ${OUTPUT_PATH}/docker-compose
docker-compose -v

いいね!

core@CoreOS ~ $ docker-compose -v
docker-compose version 1.26.0, build d4451659

docker run, kill, rm

よく使うコマンド

実行中のプロセスを見る

docker ps
docker ps -a

実行中のプロセスを停止削除する

docker kill [id]
docker rm [id]
##ダウンロードしたイメージを確認する
docker images
`docker rmi [REPOSITORY NAME]

ubuntuを立ててみる
docker pull ubuntu
docker run -it ubuntu
control+p->q

上記のコマンドを実行すると作成と同時にコンテナも起動し、そのタイミングで自動的にログインします。
また、ログイン状態を抜けるには"control"を押した状態で"P、Q"を順番に押します。
この抜けることを「dettach(デタッチ)」と呼びます。
サーバからログアウトする感覚でexitコマンドを実行すると、起動したコンテナも停止してしまうので注意してください。

それでは、"control + P、Q"で抜けた後に再度docker psコマンドで稼働状況を確
https://qiita.com/fukamiAO/items/57b7f425d24a6c91b04f
https://qiita.com/sitilma/items/86609dc46e7e8835f7de

git clone -b docker-study https://github.com/cdsl-research/weekly-study-meetings.git

python 環境を作ってみよう

https://qiita.com/A-Kira/items/7aaa1a16f8f6c8ed4040
mkdir -p docker/python
mkdir server
vim Dockerfile
vim server/test.py
vim docker-compose.yml

Leave a Reply