1. 免 sudo 使用 docker 命令

  • 如果还没有 docker group 就添加一个
sudo groupadd docker
  • 将用户加入该 group
sudo gpasswd -a ${USER} docker
  • 重启 docker 服务
sudo service docker restart
  • 切换当前会话到新 group 或者重启 X 会话
newgrp - docker

注意:最后一步是必须的,否则因为 groups 命令获取到的是缓存的组信息,刚添加的组信息未能生效,所以 docker images 执行时同样有错。

或者执行下面语句:

sudo service docker start         #启动docker服务
sudo usermod -aG docker ${USER}   #当前用户加入docker组

执行完上面命令后,还需要退出系统(命令 exit ),再重新登录一次,这样才能让修改用户组的命令 usermod 生效。

2. 如何进入未启动的容器内部

在某些场景下,我们进入容器修改了配置信息或者系统配置之后重启容器,发现容器启动不了,通过日志发现原来是我们修改出错,此时我们想把配置改回来但发现因为容器启动不了,使用 docker exec 是无法进入容器内部了,这种情况下的解决办法是:先从容器内部把配置文件复制到宿主机内,在宿主机中修改正确后再复制回容器内。 如:

# 从容器内把 Nginx.conf 复制到宿主机当前目录 
docker  cp 容器ID:/etc/Nginx/Nginx.conf . 
# 修改 Nginx.conf 
vim Nginx.conf 
# 把修改后 Nginx.conf 复制回容器内部 
docker cp Nginx.conf 容器ID:/etc/Nginx/Nginx.conf 
  1. 在容器中安装 ping

ping 命令在测试 IP 连通性时经常用到,在容器中安装 ping 的方法是:

apt-get update && apt-get install iputils-ping
  1. docker 运行启动就退出问题

https://blog.csdn.net/u010358168/article/details/81347927

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐