Rumah > Soal Jawab > teks badan
docker run -it -p 127.0.0.1::2368 ghost bash
docker ps -a
adolph@geek:~$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
84802ccaa8f7 ghost:latest "/entrypoint.sh bash 32 seconds ago Up 31 seconds 127.0.0.1:32769->2368/tcp kickass_bell
adolph@geek:~$
在浏览器输入localhost:32769
后无法连接到资源
想知道到底是哪里除了问题?
shell
#build ghost image FROM adolphlwq/ubuntu:14.04_64_base_image MAINTAINER adolphlwq <nalan3015@126.com> ENV REFRESHED_AT 2015-6-9 RUN apt-get update && apt-get -yqq upgrade #install node RUN apt-get install -yqq nodejs npm wget unzip RUN ln -s /usr/bin/nodejs /usr/bin/node #install ghost-zh RUN cd /opt/ && wget http://dl.ghostchina.com/Ghost-0.6.3-zh-full.zip && unzip -uo Ghost-0.6.3-zh-full.zip -d ghost && rm Ghost-0.6.3-zh-full.zip #initial ghost RUN cd /opt/ghost && npm install --production #workdir WORKDIR /opt/ghost/ #expose port 2368 EXPOSE 2368 CMD npm start
然后我又看了Daocloud上ghost的镜像Dockerfile,核心的地方是类似的,不知道我的问题出在哪,端口映射一直失败
daocloud上ghost的Dockerfile
伊谢尔伦2017-04-22 08:57:40
Terdapat
fail dalam config.example.js
direktori fail hantu untuk mengkonfigurasi parameter yang berkaitan:
config = {
// ### Production
// When running Ghost in the wild, use the production environment.
// Configure your URL and mail settings here
production: {
......
},
server: {
host: '0.0.0.0',
port: '2368'
}
},
Inti masalah terletak pada konfigurasi item pelayan. Lalai ialah localhost
Nampaknya localhost lalai hos umum sepadan dengan 127.0.0.1 (anda juga boleh mengubah suainya dalam /etc/hosts
). localhost ialah IP palsu yang hanya boleh diakses secara tempatan. 0.0.0.0
adalah serupa dengan aksara kad bebas *
dan boleh memadankan mana-mana IP. Lihat jawapan ini untuk butiran.
Jadi anda harus mengubah suai item konfigurasi config.example.js dan menukar alamat yang terikat pada pelayan kepada 0.0.0.0
.
Akhir sekali, saya juga membuat imej docker hantu, dan juga menggunakan proksi yang dikonfigurasikan oleh nginx. Let's Encrypt digunakan untuk menyulitkan https, anda boleh merujuk perkara berikut:
Imej Docker:qBlog
blog saya
迷茫2017-04-22 08:57:40
Tiada siapa yang menjawab. Saya juga mengalami masalah yang sama. Imej nginx yang saya buat sendiri juga mempunyai port EXPOSE dalam fail Docker Semasa menjalankan imej, walaupun parameter -p tidak digunakan, imej itu masih boleh diakses melalui IP perkhidmatan hos, dan tiada satu pun daripada mereka berkuat kuasa apabila parameter -p ditentukan untuk membuka pemetaan port. Tandakan, saya akan cari jawapannya dahulu