菜单 学习猿地 - LMONKEY

VIP

开通学习猿地VIP

尊享10项VIP特权 持续新增

知识通关挑战

打卡带练!告别无效练习

接私单赚外块

VIP优先接,累计金额超百万

学习猿地私房课免费学

大厂实战课仅对VIP开放

你的一对一导师

每月可免费咨询大牛30次

领取更多软件工程师实用特权

入驻
478
0

Docker-compose 配置项目

原创
05/13 14:22
阅读数 95529
  • 安装Docker和Docker-compose
  • 配置Dockerfile,制作镜像
  • 配置Docker-compose,配置docker-compose.yml脚本
  • 测试启动

安装Docker和Docker-compose

安装Docker

#备份
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
#下载阿里云源
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum clean all
yum makecache
#安装docker
yum install -y docker
systemctl status docker
systemctl enable docker
#修改docker工作目录
cat  /etc/docker/daemon.json
{
    "data-root": "/home/docker",
    #解决https错误
    "insecure-registries":["ip/域名:port"]
}

安装docker-compose

curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
#速度较快的国内安装
curl -L https://get.daocloud.io/docker/compose/releases/download/1.27.4/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

配置Dockerfile,制作镜像

选择较小的alpain镜像安装(谨慎选择,直接拉的镜像不支持中文字符,时间没有经过矫正)
#建议上传至本地仓库或者云镜像仓库
#拉取合适镜像,建议自己定制
From dquintela/openjdk-8-jdk-alpine
#同步时间
ADD timezone /etc/timezone
#timezone
Asia/Shanghai
#加入启动命令
ADD docker-entrypoint.sh /usr/bin/docker-entrypoint.sh
RUN chmod +x /usr/bin/docker-entrypoint.sh
##docker-entrypoint.sh
#!/bin/sh
set -o pipefail
if [ "${1:0:1}" = '-' ]; then
        set -- java "$@"
fi
  XMX=${XMX:-512}
  set -- java -jar -Xmx${XMX}m -Djava.security.egd=file:/dev/./urandom  /app/app.jar
echo $@
exec $@
#注:如需要特殊配置或者极致精简版本,自行查阅
#项目镜像请根据需求制作
#例:
#Dockerfile
FROM  10.15.8.83:5000/qingzhu/jre1.8:latest
WORKDIR /app
ADD ./qingzhu-backend*.jar /app/app.jar
ENTRYPOINT ["docker-entrypoint.sh"]

配置Docker-compose,配置docker-compose.yml脚本

version: '2'
services:
  backend01:
    image: 镜像地址/group/ProjectName:latest
    container_name: containerName
    hostname: hostname
    extends:
      file: peer-base.yaml
      service: peer-base
    ports:
      - "主机端口:容器端口"
    #volumes:
    #  - "/data/backend:/app/logs"
    environment:
      - JARNAME=app.jar
#peer-base.yaml
version: '2'
services:
  peer-base:
    cap_add:
      - SYS_PTRACE
    restart: always
    env_file:
      - ./.env
    network_mode: host

测试启动

docker-compose up
docker-compose down
#具体docker-compose请查看https://www.cnblogs.com/chyc/p/14332263.html

发表评论

0/200
478 点赞
0 评论
收藏