单机docker、docker-compose容器虚拟化

部署

  1. 阿里云镜像加速配置

    #由于habor未配置https,还需要在docker配置可信任。
    vim /etc/docker/daemon.json 
    {
            "registry-mirrors":["https://njrds9qc.mirror.aliyuncs.com"],
            "insecure-registries":["192.168.10.163:11108", "0.0.0.0"],
            "log-driver":"json-file",
            "log-opts": {"max-size":"500m", "max-file":"3"}
    }
    #max-size=500m,意味着一个容器日志大小上限是500M,
    #max-file=3,意味着一个容器有三个日志,分别是id+.json、id+1.json、id+2.json。
    
    
    #systemctl restart docker
    #systemctl status docker
    
  2. 安装

    yum install -y docker-ce-19.03.5-3.el7.x86_64.rpm docker-ce-cli-19.03.5-3.el7.x86_64.rpm 		containerd.io-1.2.6-3.3.el7.x86_64.rpm
    
  3. 配置

    vim  /usr/lib/systemd/system/docker.service
    ExecStart=/usr/bin/dockerd  -H tcp://0.0.0.0:2375 -H fd:// --containerd=/run/containerd/containerd.sock --graph /data/docker
    
  4. 启动

    systemctl daemon-reload
    systemctl enable docker
    systemctl start docker
    版本查看:docker version	
    
  5. 开启动网络转发功能,默认会自动开启

    #查看:为1是开启的
    cat /proc/sys/net/ipv4/ip_forward
    #手动开启: 
    		vim /etc/sysctl.conf 
    net.ipv4.ip_forward = 1 
    		sysctl -p 	#生效
    
  6. 安装docker-compose,运行命令:

    cd  /usr/local/bin 
    mv  docker-compose-Linux-x86_64  docker-compose
    chmod +x /usr/local/bin/docker-compose
    检查,运行
    docker-compose --version
    

docker-compose摸板

version: '3'
services:
####################项目名########################
  resin17005:
    ################使用镜像或构建镜像########################
    #使用指定镜像
    image: resin:4.0.64
    #构建镜像
    build: 
      #指定Dockerfile所在文件夹的路径
      context: /path/to/build/dir 或者 ./dir
      #指定Dockerfile文件
      dockerfile: Dockerfile-alternate
      #标签,构建过程中指定环境变量,但是在构建成功后取消,可以没有变量
      args:
        buildno: 1
        password: secret
        # 在Dockerfile中指定参数
            #ARG buildno
            #ARG password
            #RUN echo "Build number: $buildno"
            #RUN script-requiring-password.sh "$password"
      #指定构建的镜像名和tag
      image: webapp:tag
    ####################配置容器的重新启动##########
    restart: always
    ####################配置资源限制##########
    deploy:
      resources:
        limits:
          cpus: '0.50'
          memory: 50M
        reservations:
          cpus: '0.25'
          memory: 20M
    ####################添加环境变量##########
    environment:
      - RACK_ENV=development
      - SHOW=true
      - SESSION_SECRET
    ####################容器名##########
    container_name: resin_17005
    ####################文件映射##########
    volumes:
     - /data/code/project17005/WebContent:/opt/WebContent
     - /opt/jdk:/opt/jdk
     - /opt/fonts:/opt/fonts
    ####################往 /etc/hosts 文件中添加一些记录##########
    extra_hosts:
     - "somehost:162.242.195.82"
     - "otherhost:50.31.209.229"
    ####################端口映射##########
    ports:
     - "17005:8080"
    ####################暴露端口,但不映射到宿主机,只被连接的服务访问##########
    expose:
     - "17005"
    ####################检查测试服务是否正常##########
    healthcheck:
      test: ["CMD-SHELL", "curl -f http://localhost || exit 1"]
      interval: 1m30s
      timeout: 10s
      retries: 3
      start_period: 40s
    ####################覆盖容器启动后默认执行的命令##########
    command: /bin/bash -c “cp /app/dtest/config.default.yml /app/config.yml && python -u /app/dtest/tcc.py”

喜欢的亲可以关注点赞评论哦!以后每天都会更新的哦!本文为小编原创文章; 文章中用到的文件、安装包等可以加小编联系方式获得;
欢迎来交流小编联系方式VX:CXKLittleBrother 进入运维交流群

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

含义小哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值