Image psql:无法翻译主机名“;博士后;要解决的问题:名称解析暂时失败
我从github克隆了一个docker邮件存储库“”,并运行了docker-compose.yml。 它创建了6个容器和6个图像。 然后我创建了一个Dockerfile,其中有一个基本映像来自这6个映像“dockermail_roundcube”,只有一个映像包含所有服务 这些是从Github创建的图像:Image psql:无法翻译主机名“;博士后;要解决的问题:名称解析暂时失败,image,docker,docker-compose,dockerfile,Image,Docker,Docker Compose,Dockerfile,我从github克隆了一个docker邮件存储库“”,并运行了docker-compose.yml。 它创建了6个容器和6个图像。 然后我创建了一个Dockerfile,其中有一个基本映像来自这6个映像“dockermail_roundcube”,只有一个映像包含所有服务 这些是从Github创建的图像: dockermail_dovecot latest 451da418d747 5 days ago 160MB do
dockermail_dovecot latest 451da418d747 5 days ago 160MB
dockermail_roundcube latest 41b2a49d9233 5 days ago 346MB
dockermail_postfixadmin latest b4e1db428c5c 5 days ago 276MB
dockermail_postfix latest 21e6c1321a4f 5 days ago 207MB
dockermail_certs latest 9fa00330df3e 5 days ago 140MB
dockermail_postgres latest cdfa8642ac29 5 days ago 269MB
然后,我从Dockerfile构建了一个图像:
FROM dockermail_roundcube:latest
MAINTAINER Siamak Mottaghian
#Postfix
ENV DOMAIN=trivadis.com
ENV MAILNAME=smtp.trivadis.com
ENV MY_NETWORKS=172.16.0.0/15-192.168.0.0/16
# Postgres
ENV LANG=en_US.utf8
ENV DB_NAME=mail
ENV USER_NAME=mail
ENV USER_PASSWD=eeheiThoh2mohjou
ENV POSTGRES_PASSWORD=oejoojo9eimeeloocuCogichoove4oho
ENV PG_PASSWD_FILE=postgres:5432:*:usrname:passwd
# Roundcube / Postfixadmin
ENV APACHE_RUN_USER=www-data
ENV APACHE_RUN_GROUP=www-data
ENV APACHE_LOG_DIR=/var/log/apache2
ENV APACHE_PID_FILE=/var/run/apache2.pid
ENV APACHE_RUN_DIR=/var/run/apache2
ENV APACHE_LOCK_DIR=/var/lock/apache2
ENV APACHE_LOG_DIR=/var/log/apache2
# Roundcube config
ENV DEFAULT_HOST=ssl://imap.trivadis.com
ENV DEFAULT_PORT=993
ENV SMTP_SERVER=tls://smtp.trivadis.com
ENV SMTP_PORT=587
ENV DES_KEY=angahth3ki7shaeTie7queibeSaeyugi
### Postfixadmin
# Sample Admin passwd
# admin@example.com
# example12345
EXPOSE 25 465 587 110 995 143 993 80 8080
运行容器后:
docker run -d --name roundcube roundcube
我试图在浏览器中打开roundcube客户端,但这是不可能的
我在docker日志中得到了这样的信息:
psql: could not translate host name "postgres" to address: Temporary failure in name resolution
Postgres is unavailable - sleeping
你们能帮我解决那个问题吗!?
THX可能有一个解决办法,但最明显的解决方案是使用
docker compose
。将同时启动postgres容器和服务器容器。Docker compose还将为这两个容器创建一个网络,以便您能够连接到它们 适用于在迁移python/django db时遇到相同问题的任何人。如果您运行的是winodws,则需要在unix系统中使用sudo,然后以管理员身份打开Powershell或以管理员身份打开IDE
sudo python3 manage.py migrate
对于winodws
python manage.py migrate
假设一切都处于管理模式。请运行
docker ps-a
检查哪个容器正在运行要检查哪个容器:“docker ps'4e7cfff7dd9c roundcube”/docker entrypoint…“3小时前3小时起25/tcp,80/tcp,110/tcp,143/tcp,465/tcp,587/tcp,993/tcp,995/tcp、8080/tcp roundcube
似乎只是现有的容器roundcube
。应该存在postgres
的容器。如何运行docker compose
?你能告诉我吗?我不使用docker compose。我通过Dockerfile构建映像,如上所述:docker build-t roundcube。
并使用:docker run-d--name roundcube roundcube运行容器。您如何在dockermail_roundcube:latest中使用的Dockerfile中看到上面的内容?guguli您找到发生此错误的原因了吗?