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

相关文章
相关标签/搜索