windows下使用docker-compose挂载目录

2023年10月26日 · 386 字 · 1 分钟 · Docker

使用docker-compose来创建docker容器比较优雅方便,并且容易从本地移植到服务器。 但是我本地用的是windows系统,这点在开发的时候真的很蛋疼,这里只为记录一下如何在windows下使用docker-compose挂载目录。

docker-compose.yml示例

# docker-compose up -d
version: "3.7"
services:
  db:
    image: postgres:latest
    restart: "no"
    environment:
      POSTGRES_DB: postgres
      POSTGRES_USER: postgres #postgres
      POSTGRES_PASSWORD: 123456 #1234
      PGDATA: /var/lib/postgresql/data
    volumes:
      - /D/Docker/PostgreSQL/VideoCubeApp/db:/var/lib/postgresql/data
    ports:
      - "5432:5432"
  pgadmin:
    image: dpage/pgadmin4:latest
    restart: always
    environment:
      PGADMIN_DEFAULT_EMAIL: admin@admin.com #xxx@gmail
      PGADMIN_DEFAULT_PASSWORD: 123456 #abcd
      PGADMIN_LISTEN_PORT: 80
    ports:
      - "8080:80"
    volumes:
      - /D/Docker/PostgreSQL/VideoCubeApp/pgadmin:/var/lib/pgadmin
    links:
      - "db:pgsql-server"

volumes参数

{% tip info %}其实这里用挂载不是很准确,实质上你的本地和容器内同时存在这些数据,并且数据是实时双向同步的。{% endtip %}

  • volumes参数指定的就是你要挂载的本地路径(:左边)和docker容器内部路径(:右边)。
  • windows路径 D:/Docker/应该写成/D/Docker/

效果

执行如下指令开始构建并开启容器。

cd /path/to/your/docker-compose.yml # docker-compose.yml路径
docker-compose up -d

结果如下: 效果