docker-compose首次體驗

近期幫朋友配置了一下服務器,涉及到docker-compose這裏記錄一下。html

1.docker-compose.ymlmysql

version: '3'

services:
  nginx:
    image: hub.c.163.com/library/nginx:1.13
    restart: always
    volumes:
      #配置文件目錄
      - ~/tools/nginx/conf.d:/etc/nginx/conf.d
      #html目錄
      - ~/factory/source/web:/etc/nginx/html
    ports:
      - "80:80"
    networks:
      - mi_dev

  service:
    image: 服務鏡像
    ports:
      - "8002:8080"
    networks:
      - mi_dev
  mysql:
    image: hub.c.163.com/library/mysql:5.7
    volumes:
      # 存放容器啓動後的一些數據文件
      - ~/data/mysql:/var/lib/mysql
      # 使用服務器時間,默認的容器的時區是GMT
      - /etc/localtime:/etc/localtime:ro
    ports:
      - "3306:3306"
    environment:
      MYSQL_USER: root
      MYSQL_PASSWORD: 123456
      MYSQL_ROOT_PASSWORD: 123456
      MYSQL_DATABASE: mi
    restart: unless-stopped
    networks:
      - mi_dev
# 容器間通訊的網絡
networks:
  mi_dev:
    driver: bridge

服務配置數據庫鏈接時就要更換成mysql的容器名(默認與服務名相同)。nginx

2.nginx.confweb

upstream service {
  server 服務的host:8002;
}
server {
    listen 80;

    server_name localhost;

    location / {
        root html;
        index index.html index.htm;
    }

    location ^ ~/api/ {
        proxy_pass http: //service;
        proxy_set_header Host $host;
        proxy_set_header X - Real - IP $remote_addr;
        proxy_set_header X - Forwarded - For $proxy_add_x_forwarded_for;
        proxy_connect_timeout 1;
        proxy_read_timeout 1;
        proxy_send_timeout 1;
    }
}

nginx的配置主要的就這一部分。sql

這裏就不寫Dockerfile的寫法啦!docker

最後感謝諸多博客,沒記下地址就不貼了!數據庫

相關文章
相關標籤/搜索