跳至内容
docker-nestjs

如何在Linux(Centos)服务器上部署Docker项目(NestJS)

SEO禅现在所有的服务端都是基于Docker开发,所以在上线部署的时候也是使用Docker,最近对一个项目的服务端进行重构了下,要上新的服务器,这里就记录分享下整个过程。

安装Docker在Linux

SEO禅使用的服务器是Centos,可以直接YUM来安装,这也是Docker官网推荐安装方式

sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

安装完成后我们启动Docker服务:

systemctl start docker

之后运行下命令测试下:

sudo docker run hello-world

安装Git

项目都是通过Git私有仓库同步的,所以需要安装下Git:

sudo yum install git

安装好后,发现并不能直接拉仓库的数据,因为还没授权,可以参考Git如何配置SSH这篇文章。

使用Docker脚本部署

现在Docker也有了,Git也有了,只要使用docker-compose文件,我们就能把服务起起来,比如说我们起一个MongoDB的服务,配置信息如下:

# Use root/example as user/password credentials
version: '3.1'

services:
  mongodb-main:
    image: mongo
    hostname: seozen-mongodb-main
    restart: always
    ports:
      - 27018:27017
    environment:
      MONGO_INITDB_ROOT_USERNAME: root
      MONGO_INITDB_ROOT_PASSWORD: root
    volumes:
      - /var/seozen/data/seozen-mongodb-main:/data/db/seozen-mongodb-main
    networks:
      - seozen-mongodb-main-network

networks:
  seozen-mongodb-main-network:
    name: seozen-mongodb-main-network

我们再创建一个脚本文件:

echo "[deploy]: start deploy......"
git pull
docker compose down
docker compose up --build -d
echo "[deploy]: deploye ended......"

只要在服务器上运行:

sh deploy.sh

就会自动帮你拉取文件,并重新部署拉,是不是很方便,用docker的好处就是可移植性很强,不用担心版本依赖不同的问题,只要一个配置文件,全部搞定,大家可以举一反三的使用哦。

作者:SEO禅
本文链接:如何在Linux(Centos)服务器上部署Docker项目(NestJS)
版权申明:如无特殊说明,本站文章均为作者原创,著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处,谢谢!

标签:, ,

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注