イメージの作り方
https://docs.docker.jp/engine/reference/commandline/commit.html
のコンテナのコミットを参照
vimのあるコンテナを作るサンプル
1.コンテナを作る&プロセス確認する
docker run --name testpine -it -d alpine:latest
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3ced094511c0 alpine:latest "/bin/sh" 41 seconds ago Up 40 seconds testpine
2.(b)ashでコンテナに入ってvimが無い事を確認する
docker exec -it testpine ash
/ # vim
ash: vim: not found
3.vimをインストールして、コンテナを抜けて、もう一回入ってvimがある事を確認する
/ # apk add vim
fetch https://dl-cdn.alpinelinux.org/alpine/v3.14/main/x86_64/APKINDEX.tar.gz
fetch https://dl-cdn.alpinelinux.org/alpine/v3.14/community/x86_64/APKINDEX.tar.gz
(1/5) Installing xxd (8.2.3437-r0)
(2/5) Installing lua5.3-libs (5.3.6-r0)
(3/5) Installing ncurses-terminfo-base (6.2_p20210612-r0)
(4/5) Installing ncurses-libs (6.2_p20210612-r0)
(5/5) Installing vim (8.2.3437-r0)
Executing busybox-1.33.1-r6.trigger
OK: 25 MiB in 19 packages
/ # which vim
/usr/bin/vim
/ # exit
docker exec -it testpine ash
/ # which vim
/usr/bin/vim
※当然vim見つかる
/ # exit
4.イメージを作る&イメージを作れたことを確認する
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3ced094511c0 alpine:latest "/bin/sh" 4 minutes ago Up 4 minutes testpine
docker commit 3ced094511c0 testpine:1.0
docker images|findstr testpine
testpine 1.0 a3601fa6e12e 22 seconds ago 24.6MB
5.作ったイメージを元にコンテナを作り、vimがある事を確認する
docker run --rm -it testpine:1.0 ash
/ # which vim
/usr/bin/vim
※無事にvimは見つかる
旧回答
コンテナ再起動後にも保持させたい。
再起動(stop→start)ではコンテナの状態は消えません
再起動と勘違いして再作成(コンテナ削除→コンテナ作成)をしているのではないですか?
https://docs.docker.jp/engine/reference/commandline/stop.html
https://docs.docker.jp/engine/reference/commandline/start.html
https://docs.docker.jp/engine/reference/commandline/restart.html
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/11/13 11:27
2021/11/13 11:34
2021/11/13 12:45 編集
2021/11/13 13:30 編集
2021/11/13 13:56