Docker(一)| 在 ubuntu 上安装 docker 服务环境
详细参考:https://www.runoob.com/docker/ubuntu-docker-install.html
没有安装linux环境可参考:Windows 安装ubuntu 并使用 xshell 连接.
- 使用命令:
uname -r
//查看内核版本
Docker 要求Ubuntu/CentOS
系统的内核版本高于3.10
- 获取最新版本的 Docker 安装包
命令:
wget -qO- https://get.docker.com/ | sh
然后输入当前用户的密码
如果一直停留在下面这个图片这里:
推荐使用下面的方法:
命令:
curl -fsSL get.docker.com -o get-docker.sh
这句命令会在当前文件夹下下载一个get-docker.sh的脚本,就是get.docker.com的访问结果
命令:
sh get-docker.sh --mirror Aliyun
执行脚本,并将镜像源改为阿里的镜像源
- 安装docker后会提示:(your-user:用户名称)
If you would like to use Docker as a non-root user, you should now consider
adding your user to the "docker" group with something like:
sudo usermod -aG docker your-user
Remember that you will have to log out and back in for this to take effect!
如果不用root
用户直接运行docker
时,需要执行 sudo usermod -aG docker root123
命令,然后重新登录,否则会有如下报错:
如果使用上面的命令,当用root123
用户运行docker
时,需要每次在运行命令的前面需要加sudo
- 启动
docker
后台服务
命令:
sudo service docker start
- 镜像加速,到
/etc/docker/
目录下查看是否有名称为daemon.json
的文件,没有则创建,写入下面的配置:
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}
- 如果没有权限创建或上传文件,执行命令:
sudo chmod -R 777 /etc/docker
如果没有 vim 命令,参考:Docker 问题 | 编辑文件出现 bash: vi: command not found.
- 测试
docker
服务
命令:docker ps
如果报错:(因为docker需要root权限才能访问)
”Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.26/images/json: dial unix /var/run/docker.sock: connect: permission denied“
解决方法:
docker守护进程启动的时候,会默认赋予名字为docker的用户组读写Unix socket的权限,因此只要创建docker用户组,并将当前用户加入到docker用户组中,那么当前用户就有权限访问Unix socket了,进而也就可以执行docker相关命令
依次执行即可:
sudo groupadd docker #添加docker用户组
sudo gpasswd -a $USER docker #将登陆用户加入到docker用户组中
newgrp docker #更新用户组
docker ps #测试docker命令是否可以使用sudo正常使用