docker-compose使用tips
1、安装
安装dockper-compose之前,首先要安装docker引擎。
使用root用户安装,
sudo curl -L https://github.com/docker/compose/releases/download/1.20.1/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
验证:
root@eyecool-test-server:~# docker-compose --version
docker-compose version 1.20.1, build 5d8c71b
2、docker-compose.yml
编写docker-compose.yml文件,
version: '3'
services:
xxx-log-biz: #服务名称
build:
context: /home/xxx/yyy/xxx-log-biz # Dockfile所在路径
restart: always
container_name: xxx-log-biz # 容器名称
image: xxx-log-biz #镜像名称
ports:
- 6701:6701 #端口映射
extra_hosts:
- "xxx-register:192.168.63.6" #如何应用的yml中用到了hostname,需要映射一下
- "xxx-mysql:192.168.63.25"
3、常用命令
#后台构建启动
docker-compose up -d
#显示所有容器
docker-compose ps
#验证docker-compose.yml文件配置
#当配置正确时,不输出任何内容,当文件配置错误,输出错误信息
docker-compose config -q
#查看nginx的实时日志
docker-compose logs -f ecscp-log-biz
4、常见问题
4.1 用户权限
当使用root用户安装docker-compose后,如果使用普通用户执行docker-compose命令,可能会出现以下问题:
ERROR: Could not connect to Docker daemon at http+docker://localhost - is it running?
解决方法:
1、首先验证docker引擎是否启动
$ service docker status
● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2022-10-31 15:57:08 CST; 19h ago
Docs: https://docs.docker.com
Main PID: 4336 (dockerd)
Tasks: 23
Memory: 515.9M
CPU: 1min 15.347s
2、检测owner是否正确
ls -al /var/run/docker.sock
$ ls -al /var/run/docker.sock
srw-rw---- 1 root docker 0 Oct 31 15:57 /var/run/docker.sock
3、将用户加入docker的用户组
sudo usermod -aG docker xxxx
4、退出当前连接,重新登录