docker コマンドの概要
1.スタート
1. 環境の準備
centOs 7
gcc
gcc-c++
2.ドッカーをインストールする
-
古いバージョンの docker をアンインストールする
yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
-
必要なパッケージをインストールする
yum install -y yum-utils \ #提供了 yum-config-manager device-mapper-persistent-data \ # device mapper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2 lvm2
-
リポジトリソースの設定
公式倉庫ソースサーバーは海外にあるため、速度が非常に遅いですが、ここでは次のような国内ソースを使用できます: 阿里雲ソース 清華大学ソース (2 つのうちの 1 つを選択)
阿里云源
yum-config-manager \ --add-repo \ http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
清华大学源
yum-config-manager \ --add-repo \ https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
-
最新バージョンのDocker Engine-Communityとcontainerdをインストールします。
yum install docker-ce docker-ce-cli containerd.io
-
Dockerサービスを開始する
systemctl start docker
-
インストールが成功したかどうかをテストする
docker run hello-world
3.ドッカーをアンインストールする
-
インストールパッケージを削除する
yum remove docker-ce
-
イメージ、コンテナ、設定ファイルなどを削除します。
rm -rf /var/lib/docker
2. dockerの共通コマンド
1.ミラーコマンド
(1). ミラー化された Docker イメージを表示する
- ヘルプドキュメントを表示する
docker images --help
[root@wsm ~]# docker images --help
Options:
-a, --all #显示所有镜像(默认隐藏中间镜像)
--digests #显示摘要
-f, --filter filter #根据所提供的条件过滤输出
--format string #使用Go模板打印镜像
--no-trunc #不截断输出
-q, --quiet #只显示镜像id
docker images -a
ミラーの詳細を表示する
[root@wsm ~]# docker images -a
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest d1165f221234 3 months ago 13.3kB
#仓库源 #镜像标签 #镜像id #创建时间 #镜像大小
docker images -q
画像のIDのみを表示します
[root@wsm ~]# docker images -q
d1165f221234
(2) ミラー検索 docker-search
docker search 镜像名称
直接検索
[root@wsm ~]# docker search linux
#镜像名 #镜像的描述说明 #star数 #官方的 #自动
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
linuxserver/sonarr A Sonarr container, brought to you by LinuxS… 1371 [OK]
linuxserver/plex A Plex Media Server container, brought to yo… 1189 [OK]
linuxserver/radarr A Radarr container, brought to you by LinuxS… 1029
linuxserver/transmission A Transmission container, brought to you by … 815
linuxserver/jackett A Jackett container, brought to you by Linux… 705
linuxserver/letsencrypt A Letsencrypt nginx container, brought to yo… 565
linuxserver/qbittorrent A Qbittorrent container, brought to you by L… 518
linuxserver/sabnzbd A Sabnzbd container, brought to you by Linux… 460 [OK]
docker search 镜像名 --filter=stars=1000
条件から探す
[root@wsm ~]# docker search linux --filter=STARS=1000
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
linuxserver/sonarr A Sonarr container, brought to you by LinuxS… 1371 [OK]
linuxserver/plex A Plex Media Server container, brought to yo… 1189 [OK]
linuxserver/radarr A Radarr container, brought to you by LinuxS… 1029
(4) イメージドッカープルをプルします
-
docker pull 镜像名
デフォルトの最新バージョン -
docker pull 镜像名:tag
指定されたバージョン[root@wsm ~]# docker pull mysql Using default tag: latest #不写tag 默认安装最新版 latest: Pulling from library/mysql b4d181a07f80: Pull complete #分层下载 a462b60610f5: Pull complete 578fafb77ab8: Pull complete 524046006037: Pull complete d0cbe54c8855: Pull complete aa18e05cc46d: Pull complete 32ca814c833f: Pull complete 9ecc8abdb7f5: Pull complete ad042b682e0f: Pull complete 71d327c6bb78: Pull complete 165d1d10a3fa: Pull complete 2f40c47d0626: Pull complete Digest: sha256:52b8406e4c32b8cf0557f1b74517e14c5393aff5cf0384eff62d9e81f4985d4b #签名 Status: Downloaded newer image for mysql:latest docker.io/library/mysql:latest #真实地址
(5) ミラー docker rmi -f [id] を削除します。
[root@wsm ~]# docker rmi -f d1165f221234
Untagged: hello-world:latest
Untagged: hello-world@sha256:9f6ad537c5132bcce57f7a0a20e317228d382c3cd61edae14650eec68b2b345c
Deleted: sha256:d1165f2212346b2bab48cb01c1e39ee8ad1be46b87873d9ca7a4e434980a7726
すべての画像を削除する docker rmi -f $(docker images -aq)
2. コンテナコマンド
コンテナはイメージの後に来る 拉取容器 docker pull centos
(1) コンテナのdocker runを実行する
docker run -[参数] 镜像名
#参数
-it 使用交互方式运行,并且进入容器
-d 以后台的形式运行
-p 指定容器的端口 主机端口:容器端口
#启动容器,并且进入
[root@bogon ~]# docker run -it centos /bin/bash
[root@05b04176f1d3 /]# ls
bin dev etc home lib lib64 lost+found media mnt opt proc root run sbin srv sys tmp usr var
(2) コンテナ出口から出る
#离开容器 并且停止容器的运行
[root@05b04176f1d3 /]# exit
#离开容器但是不停止容器的运行
ctrl + Q + P
####(3) 実行中のコンテナ docker ps を表示する
-a, --all 显示所有容器 默认只显示运行中的
-f, --filter filter 根据条件过滤
-n, --last int 显示最近创建的容器(包括所有状态)(默认-1)
-q, --quiet 只显示容器id
-s, --size 显示总文件大小
(4) コンテナ docker rm を削除する
docker rm 容器id 删除单个容器
docker rm -f $(docker ps -aq) 删除所有容器
(5) コンテナの起動と停止
docker start 容器id 启动容器
docker restart 容器id 重启容器
docker stop 容器id 停止容器
docker kill 容器id 强制停止容器
3. その他のコマンド
(1) コンテナをバックグラウンドで起動する
docker run -d cnetos /bin/bash 后台运行命令 若无前台应用
(2) ログの閲覧
docker logs -tf --tail 容器id 产看容器日志命令
(3) コンテナ内のプロセスを表示する
docker top 容器id
(4) コンテナメタデータの表示ドッカー検査
docker inspect 容器id
(5)容器に入れます
docker exec -it 容器id /bin/bash 进入容器并且打开新的命令行
docker attach 容器id 进入容器正在执行的终端
(6) コピー
docker cp 需要拷贝的路径 拷贝过去的路径