docker、 docker-compose在Ubuntu下安装及其常用命令
docker compose简易使用,和容器的映射文件夹下的非安全方法的文件权限解决
·
docker、 docker-compose在Ubuntu下安装及其常用命令
安装和卸载docker
卸载原有的旧版本
sudo apt-get remove docker docker-engine docker.io
从docker官网获取安装脚本安装
curl -fsSL get.docker.com -o get-docker.sh && sudo sh get-docker.sh
切换使用国内镜像源
国内镜像源
- docker官方国内镜像仓库地址
https://registry.docker-cn.com
- 阿里云
个人ID获取https://cr.console.aliyun.com/#/acceleratorhttps://<个人ID>.mirror.aliyuncs.com
- 网易
https://hub-mirror.c.163.com/
- 科大
https://docker.mirrors.ustc.edu.cn/
切换方法
- 编辑配置文件
没有/etc/docker
文件夹就创建,没有daemon.json
文件也创建。sudo vim /etc/docker/daemon.json
- 复制以下内容写入文件
daemon.json
中{ "registry-mirrors": ["https://registry.docker-cn.com"] }
- 重启docker生效
sudo systemctl restart docker
运行Hello world测试是否安装
sudo docker run hello-world
安装docker-compose
下载二进制文件
以下连接二选一即可,推荐使用daocloud下载:
- Github下载:
sudo curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
- 国内daocloud下载:
sudo curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
添加执行权限
sudo chmod +x /usr/local/bin/docker-compose
测试是否可运行
docker-compose --version
返回docker-compose version 1.25.1, build a82fef07
即正常运行,当然版本信息可能不一样。
新建Linux用户和增加到docker用户组
新建用户
新建一个用户名为aaa的用户,-m:自动建立用户的登入目录。
sudo useradd -m aaa
修改用户密码
sudo passwd aaa
设置命令终端
这里我修改为我常用的bash,sh用不习惯。
sudo vim /etc/passwd
用户增加到docker用户组
修改后退出此用户重新登录生效。
sudo usermod -aG docker aaa
如果用户没有加入到docker用户组,在运行容器的时候会出现错误提示Could not connect to Docker daemon at http+docker://localhost - is it running?
docker-compose配置文件yml编辑
解决容器里访问docker映射主机的文件出现Permission denied.
这里是真的坑,网上的说法很多,什么selinux用户权限加参数等等,而我解决这个问题很简单:
在启动docker compose之前先创建好data文件夹,我这里的data文件夹是映射到容器里面的路径,并更改权限。
注意:启动之后由docker创建的目录需要把子目录的权限也更改。
sudo chmod -R 777 data
更多推荐
已为社区贡献1条内容
所有评论(0)