2016-09-19 85 views
0

我創造了我的第一個Dockerfile運行,但是當我運行泊塢窗圖像慣於在後臺

sudo docker ps 

容器不是在後臺運行的命令,這是我dockerfile:

# Set the base image to Ubuntu 
FROM debian:jessie 

# File Author/Maintainer 
MAINTAINER <Qop> 

# Update the repository sources list 
RUN apt-get update 

################## BEGIN INSTALLATION ###################### 

RUN apt-get update && apt-get upgrade -y 
RUN apt-get install -y \ 
vim \ 
apache2 

##################### INSTALLATION END ##################### 

# Expose the default port 
EXPOSE 81 

# Default port to execute the entrypoint (MongoDB) 
CMD ["--port 81"] 

# Set default container command 
ENTRYPOINT /bin/bash 

回答

1

隨着bash入口點,bdin將在stdin返回文件結尾時立即退出。所以你讓它繼續運行,你需要用docker run -itd image-name來啓動它。 -i使它互動,-t分配一個tty和-d分離。這使stdin在容器上保持打開狀態,並允許您對容器附加或執行命令。

後續行動:我剛剛看到你的命令--port 81,當它作爲bash上的命令運行時,會給你一個無效的選項。如果你需要將mongo作爲選項運行,你需要一個不同的入口點。

+0

謝謝,這使得很多感覺! – Qop