在CentOS中使用docker運行nodejs應用

1、使用yum安裝dockernode

yum -y install docker

  

2、查看docker版本linux

docker  version

 

3、安裝完成後,使用下面的命令來啓動 docker 服務,並將其設置爲開機啓動:mongodb

[root@localhost ~]# systemctl  start docker.service
[root@localhost ~]# systemctl  enable docker.service

  

4、設置docker加速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

  

5、下載nodejs和mongodb的鏡像。須要的鏡像在docker阿里雲鏡像庫上查找數據庫

docker pull node
docker pull mongo

  

6、安裝lrzsz工具,用以將windows上的nodejs文件 上傳到CentOS上npm

yum -y install lrzsz

  

7、將nodejs項目文件夾壓縮成tar.gz格式,而後在XShell中移動到指定目錄,輸入rz上傳文件。(nodejs項目不要包含node_modules文件夾)json

cd /home
rz
ls

  

8、解壓項目文件到指定目錄windows

mkdir /home/blog
tar zxvf blog.tar.gz blog

  

9、關閉selinux,不關閉這一個就沒法實現docker的持久化,修改SELINUX=disabled,而後重啓系統,sestatus查看是否設置成功瀏覽器

vi /etc/selinux/config

 

10、使用docker運行mongodb數據庫,建立對應文件夾用以持久化bash

mkdir /home/mongo
docker run --name mongodb -v /home/mongo:/data/db -p 27017:27017 -d mongo

  

11、將位置移動到解壓的項目文件夾中,編寫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

 

12、啓動nodejs項目
--link的做用是綁定其餘容器,並將該容器以指定名稱暴露給當前容器。下面將mongodb的容器暴露給項目容器,這樣項目才能鏈接到mongodb。
(記得修改mongodb的鏈接地址,要不會報錯)
docker run --name nodeApp --link mongodb:mongodb -d -p 3000:3000 mynodeapp

  

十3、查看全部啓動docker容器

docker ps

 

十4、經過ip在瀏覽器訪問nodejs應用

相關文章
相關標籤/搜索