在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應用

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM