纸壳CMS是基于ASP.Net Core开发的可视化内容管理系统,可以跨平台部署,可以在容器中运行。接下来看看如何在docker中运行纸壳CMS。

GitHub:https://github.com/SeriaWei/ZKEACMS.Core

方式一

直接运行以下命令即可在docker中运行纸壳CMS,运行成功以后,使用{IP}:5000来访问:

docker run -d -p : zkeasoft/zkeacms

注意:使用这种方式运行,数据库使用的是SQLite。

方式二

接下来我们修改使用MySql数据库。

安装MySql数据库

首先先在docker中运行一个MySql实例:

docker pull mysql

运行一个MySql实例:

docker run -d -e MYSQL_ROOT_PASSWORD=root --name mysql -p : mysql --lower_case_table_names=

可以使用以下命令来查看容器的运行状态:

docker ps -a

MySql Client

安装mysql client,接下我将使用mysql client来连接容器中的MySql数据库。这里使用的服务器是Ubuntu,所以直接使用apt包管理工具安装:

apt install mysql-client

创建数据库

接下来就是下载数据库脚本文件。纸壳CMS的MySql数据库脚本文件都在GitHub上:https://github.com/SeriaWei/ZKEACMS.Core/tree/master/DataBase/MySql,注意下载最新版本的脚本。使用wget下载脚本文件并保存为dump.sql:

wget -O dump.sql https://github.com/SeriaWei/ZKEACMS.Core/raw/master/DataBase/MySql/Dump3.1.2.sql

使用mysql命令来连接容器中的mysql:

mysql --protocol=tcp -uroot -proot

注意加上--protocol=tcp,不然会出现以下错误:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

或者也也可以指定host为127.0.0.1来连接:

mysql -h 127.0.0.1 -uroot -proot

最后使用source命令调用dump.sql来初始化数据库,dump.sql会创建一个数据库名为zkeacms_core的数据库:

source dump.sql;

等待数据库初始化完成,然后查看一下zkeacms_core数据库是否已初始化:

show database;

如果数据库已经创建完成,输入exit退出mysql。

纸壳CMS镜像

拉取最新的纸壳CMS的镜像:

docker pull zkeasoft/zkeacms

使用以下命令运行一个纸壳CMS实例:

sudo docker run -d -p : --link=mysql --name=cms -e Database:DbType="MySql" -e Database:ConnectionString="Server=mysql;Database=zkeacms_core;User Id=root;Password=root;" zkeasoft/zkeacms

关键参数说明:

  • --link=mysql:在纸壳CMS容器中连接MySql容器,这样才能访问MySql数据库
  • -e Database:DbType="MySql":设置数据库类型为MySql
  • -e Database:ConnectionString="Server=mysql;Database=zkeacms_core;User Id=root;Password=root;":设置连接字符串

运行成功以后,使用{IP}:5000来访问了。

原文地址:http://www.zkea.net/codesnippet/detail/zkeacms-run-on-docker.html

在Docker中运行纸壳CMS并配置使用MySql的更多相关文章

  1. 用Docker自动构建纸壳CMS

    纸壳CMS可以运行在Docker上,接下来看看如何自动构建纸壳CMS的Docker Image.我们希望的是在代码提交到GitHub以后,容器镜像服务可以自动构建Docker Image,构建好以后, ...

  2. 纸壳CMS(ZKEACMS)体验升级,快速创建页面,直接在页面中修改内容

    关于纸壳CMS 纸壳CMS又名 ZKEACMS Core 是ZKEACMS的 .net core 版本,可运行在 .net core 1.1 平台上.是一个开源的CMS. 纸壳CMS对于 ZKEACM ...

  3. 纸壳CMS主题增强,支持主题中加入模板

    背景 在之前,纸壳CMS的主题仅仅只是CSS样式,并不支持在主题下使用模板来构建不同的HTML结构.现在我们对主题功能做了增强,可以在主题下添加各自的模板,这样在制作主题时,就会更加自由.不仅如此,新 ...

  4. 使用vs code开发纸壳CMS并启用Razor智能提示

    关于纸壳CMS 纸壳CMS是一个开源免费的,可视化设计,在线编辑的内容管理系统.基于ASP .Net Core开发,插件式设计: 下载代码 GitHub:https://github.com/Seri ...

  5. 纸壳CMS可视化建站系统搭建多语言网站

    纸壳CMS是可视化建站系统,现已经从架构上支持多语言.但是多语言功能默认是没有开启的.您可以从设置中开启多语言,或者随时关闭它,您可以随时进行切换. 开启多语言 如果您没有在系统设置中看到多语言设置菜 ...

  6. 使用VS Code开发纸壳CMS自动编译主题压缩CSS,JS

    Visual Studio Code (简称 VS Code / VSC) 是一款免费开源的现代化轻量级代码编辑器,支持语法高亮.智能代码补全.自定义热键.括号匹配.代码片段.代码对比 Diff.GI ...

  7. 纸壳CMS替换默认实现

    简介 纸壳CMS是一个开源免费的可视化内容管理建站系统,拖拽就可以轻松建网站. GitHub: http://github.com/SeriaWei/ZKEACMS 纸壳CMS在设计上使用的是ASP. ...

  8. ASP .Net Core路由(Route) - 纸壳CMS的关键

    关于纸壳CMS 纸壳CMS是一个开源免费的,可视化设计,在线编辑的内容管理系统.基于ASP .Net Core开发,插件式设计: GitHub:https://github.com/SeriaWei/ ...

  9. 纸壳CMS的插件加载机制

    纸壳CMS是一个开源的可视化设计CMS,通过拖拽,在线编辑的方式来创建网站. GitHub https://github.com/SeriaWei/ZKEACMS.Core 欢迎Star,Fork,发 ...

随机推荐

  1. .net的内置对象

    一 . 获取客户端,服务器端信息: Response.Write("客户端信息:"); Response.Write("<br>浏览器类型,版本:" ...

  2. python进程之间修改数据[Manager]与进程池[Pool]

    #前面的队列Queue和管道Pipe都是仅仅能再进程之间传递数据,但是不能修改数据,今天我们学习的东西就可以在进程之间同时修改一份数据 #Mnager就可以实现 import multiprocess ...

  3. linux下安装memcached以及扩展(xampp环境)

    网上有很多相关的文章,就不具体写了.(假设这里文件都上传到更目录下的tmp文件夹下) 1.大致流程先装 libevent 和 memcache http://www.cnblogs.com/zgx/a ...

  4. php Pthread 多线程 (四) 共享内存

    有些时候我们希望在多个线程中共享一些需要的数据,我们可以使用shmop扩展. <?php class Count extends Thread { private $name = ''; pub ...

  5. mysql自定义函数收集

    代码: 查找字符串 in_string 中,存在多少个字符串 in_find_str delimiter $$ DROP FUNCTION IF EXISTS `fn_findCharCount` $ ...

  6. 相机拍摄时最重要的三个参数——光圈、快门、ISO

    注:这篇文章我四年前发布在其他地方,现在移过来. 如果你对相机只有很少了解,那么看这篇文章再好不过啦,我结合很多资料,力图用最通俗易懂的方式进行讲解. 相机拍摄时最重要的3个参数就是——光圈.快门.I ...

  7. Java一个文件上传工具类

    /** * 文件上传 * * @author cary * @since 2012-12-19 下午2:22:12 */ public class FileUploader { static fina ...

  8. pthread_exit pthread_join

    int pthread_join(pthread_t thread, void **retval); int pthread_detach(pthread_t thread); void pthrea ...

  9. part1:3-VMware及redhat enterprise Linux 6 的安装

    创建虚拟机PC FILE->NEW Virtual machine->custom(自定义,定制)->...->I WILL INSTALL THE OS LATER-> ...

  10. 【JS】判断浏览器类型

    判断原理 JavaScript是前端开发的主要语言,我们可以通过 编写JavaScript程序来判断浏览器的类型及版本.JavaScript判断浏览器类型一般有两种办法,一种是根据各种浏览器独有的属性 ...