Dockerfile 是一个用于构建自定义镜像的文本文件,文本内容包含了用于指导 Docker 创建自定义镜像的一系列指令,是用于创建镜像的蓝图。
这通常在将我们自己的程序打成Docker镜像时使用。
Compose 是一个用于定义和运行多容器 Docker 应用程序的工具。使用 Compose,您可以使用 YAML 文件来配置应用程序的服务。然后,使用一个命令,您可以从您的配置中创建并启动所有服务。Compose 适用于所有环境:生产、登台、开发、测试以及 CI 工作流程。
使用 Compose 基本上是一个三步过程:
我们在搭建ODOO开发环境时,最重要的两个服务就是ODOO服务和数据库服务。除此之外,我们还可能对数据库可视化管理有需要(比如使用PgAdmin),本篇以此为基础,使用 Docker Compose 编排ODOO应用,将所需服务在YAML文件中定义组装。生成的YAML文件,在装有Docker服务的环境上,只需通过一行指令即可完成ODOO应用的快速搭建。
- version: "3.7"
- services:
- service_odoo:
- image: odoo:14.0
- restart: always
- container_name: dev_odoo14
- ports:
- - "18069:8069"
- depends_on:
- - service_postgresql
- environment:
- - HOST=service_postgresql
- - USER=odoo14
- - PASSWORD=odoo14
- volumes:
- - ./docker_volumes/odoo-data:/var/lib/odoo
- - ./docker_volumes/odoo14_addons:/mnt/extra-addons
- # - ./docker_volumes/odoo14_addons:/etc/odoo # 自定义config文件路径
-
- service_postgresql:
- image: postgres:12.0
- restart: always
- container_name: dev_postgresql
- ports:
- - "15432:5432"
- environment:
- - POSTGRES_USER=odoo14
- - POSTGRES_PASSWORD=odoo14
- - POSTGRES_DB=postgres
- volumes:
- - ./docker_volumes/pgdata:/data/postgresql
-
- service_pgadmin:
- image: dpage/pgadmin4
- restart: always
- container_name: dev_pgadmin
- ports:
- - "15000:80"
- depends_on:
- - service_postgresql
- environment:
- PGADMIN_DEFAULT_EMAIL: 'admin@dev.com'
- PGADMIN_DEFAULT_PASSWORD: '123456'
- PGADMIN_CONFIG_ENHANCED_COOKIE_PROTECTION: 'True'
- PGADMIN_CONFIG_CONSOLE_LOG_LEVEL: 10
- volumes:
- - ./docker_volumes/pgadmin:/root/.pgadmin
进入YAML 文件所在文件夹,执行如下指令(-d 以后台方式运行):
docker-compose up -d
注意: