0
点赞
收藏
分享

微信扫一扫

(亲测)Docker部署开源项目Django-CMS企业内容管理系统

米小格儿 2023-12-18 阅读 35

一、Django-CMS介绍

1.1 Django-CMS简介

Django-CMS是一款基于Django框架的开源企业内容管理系统,它功能实用、安全可靠,支持拖拽上传图片、轮播图、Docker 部署等功能,可轻松进行二次开发,多用于构建企业官网。

1.2 Django-CMS特点

  • 分层页面
  • 对多语言网站的广泛内置支持
  • 多站点支持
  • 草稿/发布工作流
  • 版本控制
  • 复杂的发布体系结构,也可以在您自己的应用程序中使用
  • 前端内容编辑
  • 嵌套插件的分层内容结构
  • 您自己的应用程序可以挂钩的可扩展导航系统
  • SEO 友好的网址
  • 旨在完全集成到其他应用程序中

二、本地环境介绍

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为centos7.6。

hostname

IP地址

操作系统版本

Docker版本

jeven

192.168.3.166

centos 7.6

20.10.17

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎使用; 2.在Docker环境下成功部署Django-CMS企业内容管理系统。

三、本地环境检查

3.1 检查Docker服务状态

检查Docker服务是否正常运行,确保Docker正常运行。

[root@jeven ~]# systemctl status docker

3.2 检查Docker版本

检查Docker版本

[root@jeven ~]# docker -v  

3.3 检查docker compose 版本

检查Docker compose版本,确保2.0以上版本。

[root@jeven ~]# docker compose version

四、下载django-cms-quickstart

4.1 django-cms-quickstart介绍

此版本使用运行的Python 3.9以及Django 3.2和Django CMS 3.11的最新版本。

4.2 下载django-cms-quickstart

  • 下载django-cms-quickstart

[root@jeven data]# git clone https://github.com/django-cms/django-cms-quickstart.git 


################################################################
如果下载不下来
访问如下地址下载django-cms-quickstart-main.zip 文件
https://github.com/django-cms/django-cms-quickstart

执行命令
apt install unzip

unzip django-cms-quickstart-main.zip

  • 查看目录结构

[root@jeven data]# cd django-cms-quickstart/ 
[root@jeven django-cms-quickstart]#tree -L 2 ./ 

4.3 查看Dockerfile文件

查看Dockerfile文件内容

[root@jeven django-cms-quickstart]# cat Dockerfile  FROM python:3.9 WORKDIR /app COPY . /app RUN pip install -r requirements.txt RUN python manage.py collectstatic --noinput CMD uwsgi --http=0.0.0.0:80 --module=backend.wsgi

4.4 查看docker-compose.yml文件

查看docker-compose.yml文件内容

[root@jeven django-cms-quickstart]# cat docker-compose.yml  version: "3"  services:   web:     # the application's web service (container) will use an image based on our Dockerfile     build: .     # map the internal port 80 to port 8000 on the host     ports:       - "8000:80"     # map the host directory to app (which allows us to see and edit files inside the container)     volumes:       - ".:/app:rw"       - "./data:/data:rw"     # the default command to run whenever the container is launched     command: python manage.py runserver 0.0.0.0:80     # the URL 'postgres' or 'mysql' will point to the application's db service     networks:       - djangocmsnet      env_file: .env-local    database_default:     # Select one of the following db configurations for the database     image: postgres:13.5-alpine     ports:       - "5432:5432/tcp"  # allow your local dev env to connect to the db     environment:       POSTGRES_DB: "db"       POSTGRES_PASSWORD: "password"       POSTGRES_HOST_AUTH_METHOD: "trust"       SERVICE_MANAGER: "fsm-postgres"      networks:       - djangocmsnet      volumes:       - ".:/app:rw"  networks:   djangocmsnet:

五、部署Django-CMS

5.1 构建镜像

构建镜像django-cms-quickstart_web

docker compose build web

(亲测)Docker部署开源项目Django-CMS企业内容管理系统_django

查询本地镜像

[root@jeven django-cms-quickstart]# docker images |grep web django-cms-quickstart_web                                   latest                 c2c85dab6120   29 minutes ago   1.15GB lihaixin/webssh2                                            ssh                    2e477b65711b   2 years ago      15.8MB

5.2 启动database_default容器

启动database_default容器

docker compose up -d database_default

[root@jeven django-cms-quickstart]# docker compose up -d database_default [+] Running 9/9  ⠿ database_default Pulled                                                                                                  24.9s    ⠿ 59bf1c3509f3 Already exists                                                                                             0.0s    ⠿ c50e01d57241 Pull complete                                                                                              0.7s    ⠿ a0646b0f1ead Pull complete                                                                                              0.8s    ⠿ 08018e47fc43 Pull complete                                                                                              8.2s    ⠿ 6014f2775635 Pull complete                                                                                              8.3s    ⠿ 85760f97d4b8 Pull complete                                                                                              8.4s    ⠿ 3e07f59f91db Pull complete                                                                                              8.4s    ⠿ 3f86c399b0a1 Pull complete                                                                                              8.5s [+] Running 2/2  ⠿ Network django-cms-quickstart_djangocmsnet          Created                                                               0.1s  ⠿ Container django-cms-quickstart-database_default-1  Started                                                               0.5s

5.3 数据库迁移

数据库迁移

docker compose run web python manage.py migrate

(亲测)Docker部署开源项目Django-CMS企业内容管理系统_docker_02

5.4 创建用户

创建Django-CMS的管理用户和密码。

docker compose run web python manage.py createsuperuser

(亲测)Docker部署开源项目Django-CMS企业内容管理系统_django_03

5.5 部署Django-CMS

使用docker compose快速一键部署Django-CMS

[root@jeven django-cms-quickstart]# docker compose up -d [+] Running 2/2  ⠿ Container django-cms-quickstart-web-1               Started                                                               0.8s  ⠿ Container django-cms-quickstart-database_default-1  Started                                                               0.7s

5.6 检查Django-CMS容器状态

检查Django-CMS容器状态

[root@jeven django-cms-quickstart]# docker compose ps NAME                                       COMMAND                  SERVICE             STATUS              PORTS django-cms-quickstart-database_default-1   "docker-entrypoint.s…"   database_default    running             0.0.0.0:5432->5432/tcp, :::5432->5432/tcp django-cms-quickstart-web-1                "python manage.py ru…"   web                 running             0.0.0.0:8000->80/tcp, :::8000->80/tcp

六、访问Django-CMS

6.1 进入后台管理登录页面

访问地址:http://192.168.3.166:8000/admin 账号密码:root/admin,为之前设置好的管理员账号和密码。

(亲测)Docker部署开源项目Django-CMS企业内容管理系统_CMS_04

6.2 创建测试网站

  • 创建一个测试网站,选择新建网页。

(亲测)Docker部署开源项目Django-CMS企业内容管理系统_docker_05

  • 输入网站的基本信息,以及网站内容。

(亲测)Docker部署开源项目Django-CMS企业内容管理系统_django_06

(亲测)Docker部署开源项目Django-CMS企业内容管理系统_docker_07

6.3 访问测试网站效果

访问地址:http://192.168.3.166:8000/

(亲测)Docker部署开源项目Django-CMS企业内容管理系统_CMS_08



举报

相关推荐

0 条评论