DockerFile與docker-compose.yml是什么


之前一直搞不懂DockerFile與docker-compose.yml到底是什么,它們有啥關系,現在明白了,它們沒有關系

DockerFile是用於構造自己的鏡像時使用的文件,根據它可以生成images鏡像文件。典型命令:docker build -f DockerFile -t myImage  . (別忘了點)

DockerFile示例:

1 # 構建images(鏡像)使用
2 FROM golang
3 WORKDIR /go/src/
4 COPY yxdzb .
5 COPY script.sh .
6 EXPOSE 8080
7 CMD ["/bin/bash", "/go/src/script.sh"]

 

docker-compose.yml是用於編排配置服務(或者說是容器)的文件(不用這個文件也能配置啟動容器)。典型命令:docker-compose up -d

docker-compose.yml示例:

# 編排服務(容器),每個服務啟動一個鏡像

version: '3'

services:
  mysql:  ##(服務1)
    restart: always
    image: mysql:5.7
    ports:
      - "3306:3306"
    environment:
      MYSQL_ROOT_PASSWORD: "12345678"
    volumes:  #數據持久化,落到本地盤上  本地:docker容器
      - mysqldb:/var/lib/mysql   # 卷標:docker容器  這種方式是不知道存儲在本地的絕對路徑,需要使用docker volume lsdocker volume inspect 容器卷標 查看。 docker volume rm 容器卷標  刪除卷
      - ./docker/mysql/my.cnf:/etc/my.cnf  #卷標:容器  這種方式是使用本地絕對路徑的方式,可以查看到數據存放到本地的具體路徑  
      - ./docker/mysql/init:/docker-entrypoint-initdb.d/

  go-web:  ##(服務2)
    restart: always
    image: beego-web
    ports:
      - "8080:8080"

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM