以前のリビジョンの文書です
#イメージの取得 $ docker pull nginx:latest #イメージの確認 $ docker images #イメージの削除 $ docker rmi [IMAGE ID] [IMAGE ID] #コンテナの作成と実行 $ docker run --name my-nginx -d -p 8080:80 nginx:latest #コンテナの状態確認 $ docker ps #コンテナの状態確認(終了したコンテナも) $ docker ps -a #コンテナの起動 #-d:コンテナをバックグラウンド実行 #-name:コンテナ名の指定 #-p:ポートフォワード設定 ホスト側のポート>:<コンテナ側のポート> #-v:ディレクトリ共有 <ホスト側ディレクトリ>:<コンテナ側ディレクトリ> #-i (--interactive) オプションは、コンテナプロセスの標準入力を開いたままにします。 #-t (--tty) オプションは、コンテナプロセスに擬似TTYを割り当てます。 #コンテナプロセスが /bin/bash の様な標準入出力を対象とするプロセスの場合は -it オプションをつけ、httpd の様なソケット等を対象とするプロセスの場合は -it オプションをつけないのが一般的です。 $ docker run --name {コンテナ名} -it {image名} /bin/bash $ docker run -d --name nginx-container -p 8181:80 nginx $ docker run -it -d -p 18082:8080 -v /root/tomcat-container/logs2:/share/logs --name tomcat2 tomcat-image $ docker run -it centos:latest bash #wordpress $ docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:5.7 $ docker run --name some-wordpress -e WORDPRESS_DB_PASSWORD=my-secret-pw --link some-mysql:mysql -d -p 8080:80 wordpress #コンテナの起動、停止、再移動 #コンテナはrunで実行すると停止しても残っている。startするか、docker rmでコンテナを削除してから再度runする。 $ docker container ls -a # コンテナ一覧 $ docker ps -a #コンテナ一覧 $ docker start コンテナ名 $ docker stop コンテナ名 $ docker restart コンテナ名 #コンテナへのログイン $ docker exec -it <コンテナ名> bash #ファイルコピー #(ホスト→コンテナ内) $ docker cp <ホスト側のファイル> <コンテナ名>:<コンテナ内のコピー先ディレクトリ> #(コンテナ内→ホスト) $ docker cp <コンテナ名>:<コンテナ内のコピー元ファイル> <ホスト側のコピー先ディレクトリ> #コンテナの削除 $ docker rm -f [CONTAINER ID] #コンテナをアプリ名で一括削除 $ docker ps -a -f name=[コンテナ名]| xargs docker rm #コンテナにログインする docker exec -it [コンテナ名] /bin/bash #コンテナからDockerイメージ作成 $ docker commit <コンテナ名> <作成するDockerイメージ名> #コンテナ起動、停止 $ docker start <コンテナ名> $ docker stop <コンテナ名> #コンテナからイメージ作成 # docker commit <コンテナ名> <作成するDockerイメージ名> #Dockerfileを使用して、Dockerイメージを作成 #docker build -t <Dockerイメージ名> <Dockerfileが存在するディレクトリ> $ cd <Dockerfileが存在するディレクトリ> $ docker build -t tomcat:1 . DockerfileのCMDで実行したコンソールログが確認。 # docker logs -f [Dokcerイメージ] #docker volumeの一覧を表示する # docker volume ls DRIVER VOLUME NAME local 2cab073ffcf3a... local 5e083ab7d8757... local 7d31c8ba1b049... #docer volume の削除 # docker volume rm fastapi_mysql_data fastapi_mysql_data # 起動オプションの確認 $docker inspect [コンテナ名] # マッピングの確認 $ docker port my-apache-app 80/tcp -> 0.0.0.0:8080 # exitedのタイミングでコンテナを削除する --rm $ docker run -dit --rm --name centos centos:6 /bin/bash #コンテナのIPを調べる $ docker exec -it [コンテナ名] bash $ hostname -i 172.17.0.3
Docker Windows (WSL2) で centos:6 等の古いコンテナが Exited (139) で起動しない問題の対処法