centos 装 docker mysql nodejs nginx

在 CentOS 系统中安装 Docker

  1. 安装 Docker 的依赖包:
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
  1. 添加 Docker 的 YUM 软件源:
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
  1. 安装 Docker:
sudo yum install -y docker-ce

安装完成后,你可以运行 sudo docker version 来检查 Docker 是否成功安装。

通过 Docker Compose 来管理你的应用程序。

  1. 下载 Docker Compose 的二进制文件:
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

这里安装的是 Docker Compose 的 1.29.2 版本,你可以根据需要选择不同的版本。

  1. 将下载的二进制文件添加执行权限:
sudo chmod +x /usr/local/bin/docker-compose
  1. 创建一个用于存放 Docker Compose 配置文件的文件夹:
mkdir ~/docker-compose

这里创建了一个名为 docker-compose 的文件夹,你可以根据需要自定义文件夹名称。

  1. 进入 docker-compose 文件夹,并创建一个名为 docker-compose.yml 的配置文件:
cd ~/docker-compose
touch docker-compose.yml
  1. docker-compose.yml 文件中添加如下内容:
version: "3"
services:
  nginx:
    image: nginx:latest
    ports:
      - "80:80"
    volumes:
      - ./nginx/conf.d:/etc/nginx/conf.d
      - ./nginx/html:/usr/share/nginx/html
  mysql:
    image: mysql:5.7
    ports:
      - "3306:3306"
    environment:
      MYSQL_ROOT_PASSWORD: example
      MYSQL_DATABASE: mydb
      MYSQL_USER: myuser
      MYSQL_PASSWORD: mypassword
    volumes:
      - ./mysql:/var/lib/mysql
  nodejs:
    image: node:latest
    ports:
      - "3000:3000"
    volumes:
      - ./nodejs:/usr/src/app
      - /usr/src/app/node_modules
    command: npm start

这里创建了三个服务,分别是 nginx、mysql 和 nodejs。其中,nginx 服务将监听主机的 80 端口,并将请求转发到容器内的 Nginx 服务器;mysql 服务将监听主机的 3306 端口,并使用指定的用户名和密码创建一个名为 mydb 的数据库;nodejs 服务将监听主机的 3000 端口,并使用 npm start 命令来启动应用程序。

  1. 启动 Docker Compose:
docker-compose up -d

其中,-d 参数表示以“守护进程”模式启动容器,也就是在后台运行。

这个命令会根据 docker-compose.yml 中的配置创建容器,并且启动这些容器。这些容器将在同一个网络中,并且可以互相通信。同时,Docker Compose 会在容器启动后打印出各个容器的日志输出,以方便排查问题。

执行完命令后,你可以使用 docker ps 命令来查看正在运行的容器:

docker ps

你应该能够看到 3 个正在运行的容器,分别是 mysqlnginxnodejs

现在,你已经成功使用 Docker Compose 来创建并运行多个容器了。接下来,你可以在 docker-compose.yml 文件中进行更多的配置,比如添加更多的容器、设置环境变量、指定容器的依赖关系等等。

posted @ 2023-04-12 22:01  脉望  阅读(60)  评论(0编辑  收藏  举报