【发布时间】:2017-10-07 04:19:39
【问题描述】:
我对 Docker 很陌生,我正在尝试使用 docker-compose 来将 Apache 与 PostgreSQL 一起设置。
这是我的docker-compose.yml:
而且每次我执行docker-compose up,它通常都会卡在
AH00094: Command line: 'apache2 -D FOREGROUND -D APACHE_LOCK_DIR'
这是我执行它时的输出。
在安装 postgres 时首先卡住了一些 LOG: autovacuum launcher started,当我 Ctrl+C 并重新执行 docker-compose 时,它卡在了 apache2 -D FOREGROUND -D APACHE_LOCK_DIR 行中。
这是输出
docker-compose up 拉数据库(postgres:最新)... 最新:从库/postgres 中提取 cd0a524342ef:拉取完成 9c784d04dcb0:拉取完成 d99dddf7e662:拉取完成 e5bff71e3ce6:拉取完成 cb3e0a865488:拉取完成 31295d654cd5:拉取完成 fc930a4e09f5:拉取完成 8650cce8ef01:拉取完成 61949acd8e52:拉取完成 527a203588c0:拉取完成 26dec14ac775:拉取完成 0efc0ed5a9e5:拉取完成 40cd26695b38:拉取完成 摘要:sha256:fd6c0e2a9d053bebb294bb13765b3e01be7817bf77b01d58c2377ff27a4a46dc 状态:为 postgres 下载更新的图像:最新 拉 apache2 (webdevops/apache:latest)... 最新:从 webdevops/apache 中提取 aafe6b5e13de:拉取完成 0a2b43a72660:拉取完成 18bdd1e546d2:拉取完成 8198342c3e05:拉取完成 f56970a44fd4:拉取完成 7d255d8cc29c:拉动完成 6b76599eeb74:拉取完成 ac6a5bdae794:拉取完成 bfe65de9caf3:拉取完成 45f407574293:拉取完成 5f28b0c8228a:拉取完成 ceb4b3de72bc:拉取完成 摘要:sha256:acf3049ddc1cf7f615eb4751250881d31dccfc50752ac3a1261169b684f430cb 状态:为 webdevops/apache 下载更新的图像:最新 创建 dockertest7_db_1 创建 dockertest7_apache2_1 附加到 dockertest7_db_1、dockertest7_apache2_1 apache2_1 | 2017-05-09 01:36:54,332 CRIT 将 uid 设置为用户 0 apache2_1 | 2017-05-09 01:36:54,332 WARN 解析期间包含额外文件“/opt/docker/etc/supervisor.d/apache.conf” apache2_1 | 2017-05-09 01:36:54,332 WARN 在解析过程中包含额外文件“/opt/docker/etc/supervisor.d/cron.conf” apache2_1 | 2017-05-09 01:36:54,332 WARN 在解析过程中包含额外文件“/opt/docker/etc/supervisor.d/dnsmasq.conf” apache2_1 | 2017-05-09 01:36:54,332 WARN 解析期间包含额外文件“/opt/docker/etc/supervisor.d/postfix.conf” apache2_1 | 2017-05-09 01:36:54,332 WARN 解析期间包含额外文件“/opt/docker/etc/supervisor.d/ssh.conf” apache2_1 | 2017-05-09 01:36:54,332 WARN 解析期间包含额外文件“/opt/docker/etc/supervisor.d/syslog.conf” apache2_1 | 2017-05-09 01:36:54,340 INFO RPC 接口“主管”已初始化 apache2_1 | 2017-05-09 01:36:54,340 INFO supervisord 从 pid 1 开始 db_1 |属于该数据库系统的文件将归用户“postgres”所有。 db_1 |该用户还必须拥有服务器进程。 db_1 | db_1 |数据库集群将使用语言环境“en_US.utf8”进行初始化。 db_1 |因此,默认数据库编码已设置为“UTF8”。 db_1 |默认文本搜索配置将设置为“英语”。 db_1 | db_1 |数据页校验和被禁用。 db_1 | db_1 |修复现有目录 /var/lib/postgresql/data 的权限 ...好的 db_1 |创建子目录...好的 db_1 |选择默认的 max_connections ... 100 db_1 |选择默认 shared_buffers ... 128MB db_1 |选择动态共享内存实现... posix db_1 |创建配置文件...好的 apache2_1 | 2017-05-09 01:36:55,345 产生的信息:带有 pid 17 的“apached” apache2_1 | 2017-05-09 01:36:55,404 INFO 成功:apached 进入 RUNNING 状态,进程已保持超过 0 秒(startsecs) apache2_1 | [2017 年 5 月 9 日星期二 01:36:55.414084] [mpm_event:notice] [pid 17:tid 140039054796672] AH00489: Apache/2.4.18 (Ubuntu) OpenSSL/1.0.2g 已配置 -- 恢复正常操作 apache2_1 | [Tue May 09 01:36:55.414134 2017] [core:notice] [pid 17:tid 140039054796672] AH00094:命令行:'apache2 -D FOREGROUND -D APACHE_LOCK_DIR' db_1 |运行引导脚本...好的 db_1 |执行引导后初始化...好的 db_1 |正在将数据同步到磁盘... db_1 |警告:为本地连接启用“信任”身份验证 db_1 |您可以通过编辑 pg_hba.conf 或使用选项 -A 来更改它,或者 db_1 | --auth-local 和 --auth-host,下次运行 initdb 时。 db_1 |好的 db_1 | db_1 |成功。您现在可以使用以下命令启动数据库服务器: db_1 | db_1 | pg_ctl -D /var/lib/postgresql/data -l 日志文件启动 db_1 | db_1 | ****************************************************** ** db_1 |警告:没有为数据库设置密码。 db_1 |这将允许任何有权访问 db_1 | Postgres 端口来访问您的数据库。在 db_1 | Docker的默认配置,这个是 db_1 |有效地在同一容器上的任何其他容器 db_1 |系统。 db_1 | db_1 |使用“-e POSTGRES_PASSWORD=password”设置 db_1 |它在“码头运行”中。 db_1 | ****************************************************** ** db_1 |等待服务器启动....LOG:数据库系统在 2017-05-09 01:36:56 UTC 关闭 db_1 |日志:MultiXact 成员环绕保护现已启用 db_1 | LOG:数据库系统已准备好接受连接 db_1 | LOG:autovacuum 启动器已启动 db_1 |完毕 db_1 |服务器启动 db_1 |改变角色 db_1 | db_1 | db_1 | /usr/local/bin/docker-entrypoint.sh:忽略 /docker-entrypoint-initdb.d/* db_1 | db_1 | LOG:收到快速关机请求 db_1 | LOG:中止任何活动事务 db_1 |等待服务器关闭...LOG:autovacuum 启动器正在关闭 db_1 | .LOG:正在关闭 db_1 | LOG:数据库系统已关闭 db_1 |完毕 db_1 |服务器停止 db_1 | db_1 | PostgreSQL 初始化过程完成;准备启动。 db_1 | db_1 | LOG:数据库系统于 2017-05-09 01:36:58 UTC 关闭 db_1 |日志:MultiXact 成员环绕保护现已启用 db_1 | LOG:数据库系统已准备好接受连接 db_1 | LOG:autovacuum 启动器已启动
这里我取消了,卡住了,再次执行docker-compose:
我错过了什么吗?也许是基本的东西、配置或其他东西?
【问题讨论】:
标签: apache postgresql docker docker-compose