docker的命令帮助文件很完善,输入命令查看帮助:
sudo docker
通过image启动一个容器:
去除 sudo docker run --gpus all -it -e "TERM=xterm-color" --net=host -v /home/xfz/temps:/temps nvcr.io/nvidia/pytorch:20.08-py3
其中-e "TERM=xterm-color"是传入TERM变量,使得终端中用户名彩色显示。
查看容器的网络类型
Docker 代理配置
Docker 代理分为两种,一种是为运行的 Container 配置代理,用于下载一些依赖包以及访问公网。另一种是为 Docker Daemon 配置代理,用于支持 docker 相关的命令。
一、为容器配置代理
配置容器代理一般分为两种,一种是全局配置,另一种是仅为某个容器配置。
全局配置: 首先说明,此修改方法仅支持 ubuntu 17.07 或者更高版本。
修改或创建 ~/.docker/config.json
如果有的话,先备份一下:
cp ~/.docker/config.json ~/.docker/config.json.bk
修改内容如下
gedit ~/.docker/config.json
{
"auths": {},
"HttpHeaders": {
"User-Agent": "Docker-Client/19.03.2 (linux)"
},
"proxies":
{
"default":
{
"httpProxy": "http://localhost:80",
"httpsProxy": "http://localhost:80"
}
}
}
为了确保生效,重启下 docker : systemctl restart docker
如果宿主机没有开启为局域网其他机器代理功能,我们需要在run容器的时候加上–net=host让容器和宿主机共享网络,这时就可以使用宿主机的localhost代理。
局部修改: 待写!
二、为 Docker Daemon 添加代理
为 Docker Daemon 配置代理,作用于docker的search, pull, push 等命令。
默认情况下这个配置文件夹并不存在,我们要创建它:
sudo mkdir -p /etc/systemd/system/docker.service.d
创建http-proxy.conf文件:
sudo gedit /etc/systemd/system/docker.service.d/http-proxy.conf
添加代理:
[Service]
Environment="HTTP_PROXY=127.0.0.1:10809"
[Service]
Environment="HTTPS_PROXY=127.0.0.1:10809"
刷新systemd配置:
sudo systemctl daemon-reload
重启docker,在外面的世界遨游吧:
sudo systemctl restart docker