在CentOS中使用docker執行nodejs應用
一、使用yum安裝docker
yum -y install docker
二、檢視docker版本
docker version
三、安裝完成後,使用下面的命令來啟動 docker 服務,並將其設定為開機啟動:
[root@localhost ~]# systemctl start docker.service [root@localhost ~]# systemctl enable docker.service
四、設定docker加速
mkdir -p /etc/docker tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://fp4l15j6.mirror.aliyuncs.com"] } EOF systemctl daemon-reload systemctl restart docker
五、下載nodejs和mongodb的映象。需要的映象在docker阿里雲映象庫上查詢
docker pull node docker pull mongo
六、安裝lrzsz工具,用以將windows上的nodejs檔案 上傳到CentOS上
yum -y install lrzsz
七、將nodejs專案資料夾壓縮成tar.gz格式,然後在XShell中移動到指定目錄,輸入rz上傳檔案。(nodejs專案不要包含node_modules資料夾)
cd /home rz ls
八、解壓專案檔案到指定目錄
mkdir /home/blog tar zxvf blog.tar.gz blog
九、關閉selinux,不關閉這一個就無法實現docker的持久化,修改SELINUX=disabled,然後重啟系統,sestatus檢視是否設定成功
vi /etc/selinux/config
十、使用docker執行mongodb資料庫,建立對應資料夾用以持久化
mkdir /home/mongo docker run --name mongodb -v /home/mongo:/data/db -p 27017:27017 -d mongo
十一、將位置移動到解壓的專案資料夾中,編寫Dockerfile來構建自己的映象,之前是解壓到blog資料夾中的,所以將位置改變為/home/blog
cd /home/blog
Dockerfile檔案
#Dockerfile檔案 FROM docker.io/node # Create app directory RUN mkdir -p /home/Service WORKDIR /home/Service # Bundle app source COPY . /home/Service RUN npm install EXPOSE 3000 CMD [ "npm", "start" ]
執行命令構建映象
docker build -t mynodeapp .
檢視映象
docker images
十二、啟動nodejs專案
--link的作用是繫結其他容器,並將該容器以指定名稱暴露給當前容器。下面將mongodb的容器暴露給專案容器,這樣專案才能連線到mongodb。
(記得修改mongodb的連線地址,要不會報錯)
docker run --name nodeApp --link mongodb:mongodb -d -p 3000:3000 mynodeapp
十三、檢視所有啟動docker容器
docker ps
十四、通過ip在瀏覽器訪問nodejs應用
相關文章
- 使用forever執行nodejs應用NodeJS
- 使用docker執行CentOS容器DockerCentOS
- 在Docker容器中執行ASP.NET MVC應用程式DockerASP.NETMVC
- 在 OpenFunction 中執行 Serverless 應用FunctionServer
- Docker容器中執行.Net Core應用程式Docker
- 在Docker中,可以在一個容器中同時執行多個應用程序嗎?Docker
- redis在nodejs中的應用RedisNodeJS
- 在Docker容器中執行GUI圖形應用的開源專案DockerGUI
- 在 CentOS 中安裝 nodejsCentOSNodeJS
- 在CentOS中安裝NodeJSCentOSNodeJS
- Docker命令-docker exec-在執行的容器中執行命令Docker
- 如何把 Java Web 應用放在 docker 容器中執行JavaWebDocker
- 在 SAP 雲平臺上部署和執行 Docker 應用Docker
- 在 Azure 上使用 Docker 執行 MonoDockerMono
- CentOS安裝執行NodeJS框架ExpressCentOSNodeJS框架Express
- Ooui:在瀏覽器中執行.NET應用UI瀏覽器
- 在Docker中執行SpringBoot程式DockerSpring Boot
- Docker-OSX:在Docker中執行你的蘋果Mac!Docker蘋果Mac
- [nodejs/npm] 基於Docker建立Nodejs前端應用NodeJSNPMDocker前端
- 使用 ARChon 執行時環境在 Ubuntu 上執行 Android 應用UbuntuAndroid
- 開始在 CentOS 上使用 dockerCentOSDocker
- golang執行緒池在IO多路複用中的應用Golang執行緒
- Docker入門系列之一:在一個Docker容器裡執行指定的web應用DockerWeb
- 在Web應用程式中執行計劃任務(多執行緒) (轉)Web執行緒
- Docker容器雲在金融行業的應用Docker行業
- Reactor執行緒模型及其在Netty中的應用React執行緒模型Netty
- 在Docker中,如何停止所有正在執行的容器?Docker
- centos+docker+mysql 配置與應用CentOSDockerMySql
- 【伺服器】CentOS下部署執行NodeJs Web App伺服器CentOSNodeJSWebAPP
- 華納雲:怎麼在Docker中執行資料庫?Docker資料庫
- 使用SAP BSP應用執行VueVue
- nodejs中REPL執行環境解析NodeJS
- 使用Systemd執行Docker容器Docker
- Centos 使用 dockerCentOSDocker
- NodeJs 在window中安裝使用NodeJS
- 在容器中執行Java應用程式的提示和工具 - Even HoltheJava
- 在 WASI 上執行 .NET 7 應用程式
- PyQt應用程式中的多執行緒:使用Qt還是Python執行緒?QT執行緒Python