使用 docker-compse 前,先学习下docker命令和Dockerfile
1.下载 docker-compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
2.赋权
sudo chmod +x /usr/local/bin/docker-compose
3.测试安装成功
docker-compose -v 或 docker-compose --version
4.编写 docker-compose.yml
services:
xxl-job: #服务名
command: #Dockerfile中的command
- /bin/bash
- -c
- |
cd /opt
java -Xms1024m -Xmx1024m -Djava.security.egd=file:///dev/urandom -Dfile.encoding=utf-8 -jar xxl-job-admin-2.3.0.jar
container_name: xxl-job #容器名称
environment: #环境设置 docker run 参数中的 -env
- TZ=Asia/Shanghai
image: java:8 #镜像(一个服务至少需要一个镜像)
network_mode: host #网络方式
ports: #暴露端口 docker run 参数中的 -p
- 8899:8899
volumes: #挂载卷 docker run 参数中的 -v
- ./logs:/opt/logs:rw
- ./config:/opt/config:rw
- ./app/xxl-job-admin-2.3.0.jar:/opt/xxl-job-admin-2.3.0.jar:rw
version: "3"
5.准备应用文件夹
start-xxl-job.sh 和 stop-xxl-job.sh 脚本里编写了 docker-compose up -d 和 docker-compose down 命令
6.启动项目
sh start-xxl-job.sh
该启动方式为后台启动,也可以使用 docker-compose up 前台启动,可以在成功启动后,再改为后台启动
启动后可以通过浏览器访问方式验证项目启动成功。
7.docker-compose 简单命令
docker-compose 命令 和docker命令类似,只是大多可以作用于项目中的服务
docker-compose up #启动docker-compose文件中的所有服务
docker-compose up demo #只启动docker-compose文件中的demo服务
docker-compose -f demo-compose up #启动文件名为demo-compose的项目,用于文件名不是默认docker-compose的情况
8.docker 可视化工具portainer
docker pull portainer/portainer 拉取镜像
docker volume create portainer_data
docker run -d -p 8000:8000 -p 9000:9000 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer
localhost:9000 查看页面