Dockerの基礎を理解するための3つのポイント (または、Dockerの基本を理解するための3つのこと)

長年携わってきたのは CentOS オペレーティングシステムであり、mac ユーザーや Ubuntu ユーザーの場合、一部の内容は適用できない。 インストールに関する部分は、清華大学のドキュメントを参照するのが参考になる:https://mirrors.tuna.tsinghua.edu.cn/help/docker-ce/

インストール

未知の神秘的な力により、国内でのDockerのインストールには、クラウドプロバイダーが提供するレジストリのアドレスを設定することを推奨します。ここではAlibaba Cloudを使用することをお勧めします。

リポジトリソースの設定

yum install yum-utils device-mapper-persistent-data lvm2 && \
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

最新版のインストール

Dockerは一般的なバックエンドサービスとして、起動時に自動で開始されるように設定することを推奨します。以下のコマンドはCentOS 7向けです。

sudo yum install -y docker-ce docker-ce-cli containerd.io && systemctl enable --now docker

指定バージョン展開

kubernetesおよびdockerのリリースは完全に同期されておらず、今後kubernetesを展開する場合は、kubernetes展開手順を参照し、指定バージョンのdockerをインストールしてください。

yum list docker-ce --showduplicates | sort -r
sudo yum install -y docker-ce-18.09.2-3.el7 docker-ce-cli-18.09.2-3.el7 containerd.io-18.09.2-3.el7 && systemctl enable --now docker

通常ユーザーにDocker権限を追加する

sudo usermod -aG docker ${USER}

卸載

sudo yum remove -y docker-ce docker-ce-cli containerd.io

日常使用 (にちじょうしよう)

镜像加速

未知の神秘的な力により、イメージの取得時に速度が低下することがあります。この問題を解決するために、国内のクラウドプロバイダーが多くの加速サービスを提供し、引き続き阿里云を推奨します。

加速用のURLは、ご自身の登録した阿里云アカウントで取得してください。このサービスは無料で利用でき、阿里云からは無料のイメージ構築サービスも提供されています。

cat > /etc/docker/daemon.json <<EOF
{
  "registry-mirrors": [
    "https://docker.nju.edu.cn",
    "https://mirror.baidubce.com",
    "https://docker.m.daocloud.io",
    "https://docker.mirrors.sjtug.sjtu.edu.cn"
  ]
}
EOF
systemctl daemon-reload && \
systemctl restart docker

強く推奨されるコントロールパネル

docker volume create portainer_data && \
docker run -d --name=portainer --restart=always -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:2.20.3-alpine

常用イメージの取得集

docker pull rancher/rancher:stable && docker pull portainer/portainer-ce:2.0.1 && \
docker pull centos:7 && docker pull ubuntu:20.04 && docker pull ubuntu:18.04 && \
docker pull redis:5 && docker pull redis:6 && \
docker pull alpine:3.11 && docker pull busybox:1.32 && \
docker pull rabbitmq:3.7-management && \
docker pull mariadb:10.2 && \
docker pull nginx:1.18 && docker pull nginx:1.19 && \
docker pull mysql:5.6 && docker pull mysql:8 && \
docker pull elasticsearch:6.8.11 && docker pull logstash:6.8.11 && docker pull kibana:6.8.11 && \
docker pull zookeeper:3.4 && \
docker pull influxdb:1.7 && docker pull grafana/grafana:7.3.1 && \
docker pull percona:8 && docker pull percona:5.6 && \
docker pull cloverzrg/frps-docker:0.34.3 && docker pull cloverzrg/frpc-docker:0.34.3

常用コマンドの組み合わせ

https://docs.docker.com/engine/reference/commandline/docker/


コンテナの実行状態を確認し、formatパラメータを追加して詳細なコンテナ情報を取得(イメージ情報は無視)。

docker ps --format "{{.Names}}: {{.Ports}}: {{.Size}}"
#portainer: 0.0.0.0:8000->8000/tcp, 0.0.0.0:9000->9000/tcp: 0B (virtual 172MB)
#influxdb: 0.0.0.0:8086->8086/tcp: 183B (virtual 311MB)

すべてのコンテナをワンクリックで停止

docker stop $(docker ps -a -q)

すべてのイメージをワンクリックで削除

dokcer rmi $(docker images -a -q)

イメージのエクスポート

docker save <IMAGE NAME>:<IMAGE TAG> > -o XXX.tar

イメージをエクスポートして圧縮

docker save <IMAGE NAME>:<IMAGE TAG> | gzip > XXX.tar

イメージをインポート

docker load -i XXX.tar
Licensed under CC BY-NC-SA 4.0
最終更新 2025年06月02日 20:54
金融ITプログラマーのいじくり回しと日常のつぶやき
Hugo で構築されています。
テーマ StackJimmy によって設計されています。