bulamıyorum docker ile sorun yaşıyorum ve alabilirim. Docker belgesini takiben bir kapsayıcının EXPOSE
ile bağlantılarını dinleyeceği bağlantı noktalarını ortaya çıkarabilirsiniz. Çok uzak çok iyi!Docker EXPOSE. Geçtiğimiz iki günde
Uygulamam 8080 numaralı bağlantı noktasında dinleniyorsa docker kabını EXPOSE 8080
ile ortaya çıkarmalı ve ana ana bilgisayarın bağlantı noktası 80'e docker run -p 80:8080
ile bağlamalıyım.
# DOCKER-VERSION 0.0.1
FROM ubuntu:14.10
# make sure apt is up to date
RUN apt-get update
# install nodejs and npm
RUN apt-get install -y nodejs-legacy npm git git-core
ADD package.json /root/
ADD server.js /root/
# start script
ADD start.sh /root/
RUN chmod +x /root/start.sh
EXPOSE 8080
CMD ./root/start.sh
Ve benim start.sh
sadece & npm install
& node server.js
cd /root/
Runan:
İşte benim Dockerfile olduğunu. docker build -t app1 .
Ve benim liman işçisi başlatmak nasıl: docker run -it -p 80:8080 --name app1 app1
gerçekten kablolu Ne
bu değil
İştevar express = require('express');
// Constants
var PORT = 8080;
// App
var app = express();
app.get('/', function (req, res) {
res.send('Hello world\n');
});
app.listen(PORT);
console.log('Running on http://localhost:' + PORT);
benim liman işçisi görüntüsünü nasıl inşa geçerli:
ben basit ekspres uygulaması nodejs var Çalışma. Çalıştırmak içinEXPOSE 8080
'u
EXPOSE 80
olarak değiştirmem gerekiyor. Anlamadım.
Herhangi bir açıklama? Okumak için
sayesinde Tom başınıza nodejs uygulamasında
Bu bir yapılandırma sorunudur, her zaman bu bağlantı noktası eşlemesi türünü kullanıyorum. "Çalışmıyor" yeterli bilgi değildir. Bağlantı noktaları ana bilgisayarda açık mı? Düzgün haritalandırırsan ne olur? - 8080: 8080 mi? vb. – user2105103
"Çalışmıyor" dediğimde, kapsayıcı ana kapsayıcıda istesem bile kıvrım veya 80 numaralı bağlantı noktasında herhangi bir tarayıcı kullanarak kapsayıcımla bağlantı kuramıyorum anlamına gelir. "-p 8080: 8080" kullanımı hiçbir şeyi değiştirmez. –