docker恋爱史--初识docker-compose

环境 centOS7 docker

# 安装一下子(官网给的那个地址,慢到世界毁灭)

curl -L https://get.daocloud.io/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

#添加一下权限

chmod +x /usr/local/bin/docker-compose

#再加一个简单的配置文件示例吧

version: '3.1'

services:
  oauth:
    build: #通过dockerfile创建镜像
      context: ./oauth #构建时候的上下文环境 其实就是所在目录 这里写的是相对于docker-compose.yml所在目录下的oauth目录
      dockerfile: Dockerfile  #指定使用那个dockerfile
      args: #传入build中的参数 这样就可以写一个 通用型的Dockerfile
        filename: app.jar  
        active: test 
    hostname: oauth  #指定主机名可以防止由于重启重构镜像导致IP发生变化对其他项目产生问题
    container_name: oauth
    networks:
     - network
    volumes:
     - /etc/localtime:/etc/localtime:ro
    ports:
      - 9800:9999

  mysql:
    image: mysql:5.6
    container_name: mysql
    networks:
      network:
          ipv4_address: 10.0.0.101
    volumes:
     - /etc/localtime:/etc/localtime:ro
     
    ports:
      - 3301:3306
    environment:
      MYSQL_ROOT_PASSWORD: root

 networks:
   network:
     external: true #此选项表示从已存在的网络中查找 不存在就报错

再来一个Dockerfile实例

FROM java:8
VOLUME /tmp
ARG filename active
ENV active_env=active
ADD filename app.jar
RUN bash -c 'touch /app.jar'
ENV JAVA_OPTS="-Duser.region=CN -Duser.timezone=GMT=GMT+8"
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar -Dspring.profiles.active=${active_env} app.jar" ]

大概就就是这个样子

 

你可能感兴趣的:(docker)