Linux 环境下配置 Docker
1、Docker 配置
1.1 安装 Docker
- 安装方式一(推荐):
通过yay
直接安装(全局安装):
1 | yay -Sy docker docker-compose |
docker-compose
可选安装,它可以通过配置文件Dockerfile
来构建镜像。
- 安装方式二:
通过conda
安装(局部安装,可全局使用):
首先需要创建虚拟环境用于存储安装的docker
和docker-compose
。
1 | conda create --name docker python=3.12 |
Python版本可自己选择。
1 | conda install docker docker-compose -c conda-forge |
这里的-c conda-forge
一定要加,默认的conda.org
源没有docker
。
安装好的docker
和docker-compose
是在该路径下:~/.conda/envs/docker/bin/docker
~/.conda/envs/docker/bin/docker-compose
1.2 docker 基本操作
1.2.1 docker 服务
启动docker服务
1
sudo systemctl start docker
关闭docker服务
1
sudo systemctl stop docker.service docker.socket
检查
docker
服务状态1
sudo systemctl status docker
开机自启动设置
1
sudo systemctl enable --now docker
1.2.2 添加用户到 docker 组
为了避免每次运行docker
命令时都需要使用 sudo
,可以将当前用户添加到 docker
组:
1 | sudo usermod -aG docker $USER |
然后,重新登录以使更改生效,或者重新加载用户组信息:
登录:
1 | newgrp docker |
退出:
1 | exit |
可能需要重启系统来让配置生效。
1.3 代理配置(一定要配置)
1.创建docker
相关的systemd
目录,这个目录下的配置将覆盖docker
的默认配置:
1 | sudo mkdir -p /etc/systemd/system/docker.service.d |
2.新建配置文件:
1 | kate /etc/systemd/system/docker.service.d/proxy.conf |
将以下内容复制到proxy.conf
中:
1 | [Service] |
这里需要根据自己实际的代理端口填写。
3.如果自己建了私有的镜像仓库,需要docker
绕过代理服务器直连,那么配置NO_PROXY
变量:
1 | [Service] |
多个NO_PROXY
变量的值用逗号分隔,而且可以使用通配符(*),极端情况下,如果NO_PROXY=*
,那么所有请求都将不通过代理服务器。
4.重新加载配置文件,重启docker
:
1 | sudo systemctl daemon-reload |
1 | sudo systemctl restart docker |
5.检查确认环境变量已经正确配置:
1 | sudo systemctl show --property=Environment docker |
像输出以下内容就成功了:
1 | Environment=HTTP_PROXY=http://127.0.0.1:7890 HTTPS_PROXY=http://127.0.0.1:7890 |
1.4 命令简化配置
以下推荐加到.bashrc或者.zshrc中。
- 格式化查看容器:
1
docker ps --format "table {{.ID}}\t{{.Image}}\t{{.Ports}}\t{{.Status}}\t{{.Names}}"
命令简化:
1 | alias dps='docker ps --format "table {{.ID}}\t{{.Image}}\t{{.Ports}}\t{{.Status}}\t{{.Names}}"' |
- 查看网络配置:
1
docker inspect --format='{{.HostConfig.NetworkMode}}' <容器名/容器ID>
命令简化:
1 | alias din='docker inspect --format='{{.HostConfig.NetworkMode}}'' |
- Title: Linux 环境下配置 Docker
- Author: loskyertt
- Created at : 2024-07-20 16:21:15
- Updated at : 2024-11-13 03:07:10
- Link: https://redefine.ohevan.com/2024/07/20/Linux-Docker/
- License: This work is licensed under CC BY-NC-SA 4.0.
Comments