据我了解docker-compose
文件,使用docker-compose up
命令加载图像并启动容器。相反,使用带有Dockerfile
命令的docker build
文件仅创建映像。我觉得我在这里错过了一些东西,因为事情并没有像我一样工作。
按照bitnami/wordpress说明,我使用docker-compose up d
运行正常。然后可以通过localhost访问:81
version: '2'
services:
mariadb:
image: bitnami/mariadb:latest
volumes:
- /path/to/mariadb-persistence:/bitnami/mariadb
wordpress:
image: bitnami/wordpress:latest
depends_on:
- mariadb
ports:
- '81:80'
- '443:443'
volumes:
- ./wordpress-persistence:/bitnami/wordpress
- ./apache-persistence:/bitnami/apache
- ./php-persistence:/bitnami/php
因为我希望能够以domain.com.dev的身份访问它,所以我查看了实现nginx-proxy。按照那里的说明,以及Docker nginx-proxy : proxy between containers的一些灵感,我想出了以下内容:
version: '2'
services:
nginx-proxy:
image: jwilder/nginx-proxy
container_name: nginx-proxy
restart: always
ports:
- "88:80"
volumes:
- "/var/run/docker.sock:/tmp/docker.sock:ro"
mariadb:
image: bitnami/mariadb:latest
volumes:
- //c/websites/domain_com/mariadb-persistence:/bitnami/mariadb
domain.com.dev:
image: bitnami/wordpress:latest
depends_on:
- mariadb
ports:
- '81:80'
environment:
- VIRTUAL_HOST=domain.com.dev
volumes:
- //c/websites/domain_com/wordpress-persistence:/bitnami/wordpress
- //c/websites/domain_com/apache-persistence:/bitnami/apache
- //c/websites/domain_com/php-persistence:/bitnami/php
使用此代码运行docker-compose up -d
似乎完成且没有错误。但是,当我在浏览器中访问domain.com.dev时,我得到一个默认的/ page页面,这表明我在某种程度上已经到了那里,但并非一直如此。查看本地文件夹,它们会被创建,但似乎wordpress-persistence
没有填充,这可以解释浏览器中的默认视图。
有关为什么这不会按预期出现的任何想法?我错过了一些明显的东西?
答案 0 :(得分:0)
1)对于第一种方法,你需要"完成"配置。
如果您没有正在运行的网络服务器(nginx,apache等)(在端口80上) - 只需将端口从81
更改为80
:
ports:
- '80:80'
- '443:443'
并添加记录" 127.0.0.1 domain.com.dev
"到你的hosts
文件(linux中的/etc/host
)。
P.S。您可以在第二种方法中将端口从88
更改为80
- 它可以在不更改hosts
文件的情况下工作
如果在端口80上有一个正在运行的wevserver - 则需要在virtualhost配置文件中代理指令。这是一个例子:
server {
listen 80 default_server;
server_name _;
include expires.conf;
location / {
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_set_header X-Forwarded-Proto $scheme;
proxy_pass http://172.17.0.1:81;
proxy_http_version 1.1;
}
}