docker在生产环境中的使用初体验,先把mysql给docker一下子。

在linux下做项目开发的同学都比较清楚什么是最痛苦,那就是给客户第一次部署系统的时候,一堆的编译、安装、配置,顺利的话,几个小时基本上可以搞定,不顺利的话,碰到缺少一个so库,哪个参数配置不对,一不小心几个晚上都不够用,这应该是一线部署的兄弟最苦的事情了吧。就稍微想想nginx、mysql、tomcat、fastdfs这些最小的配置,也让人头痛欲裂。

还好,docker来了,去年下半年就准备尝试一下,不过我们研发环境都用的是32位Ubuntu系统,让新来的同事折腾了一个多月,没有搞定。后来也就不了了之。

今年开年,有新项目来了,就全部切换到64位的Ubuntu14.04LTS版本,一开始在研发环境中就先把mysql给用docker给虚拟化起来。

        docker安装还是比较顺利的,根据docker官网的安装顺序,安装最新的lxc版本。然后就是安装base image,使用docker file/ubuntu镜像来做,基本上是比较顺利的。

        然后就是安装mysql,开始也是使用dockerfile/mysql来安装,安装也顺利,配置启动之后,数据导入后也可以使用,当然也是经过了一番熟悉和折腾。

        但是在使用的过程中,发现参数配置有问题,第一个是汉字显示问题,第二个是时间timeout问题,这些都要在dockfile中配置,恰恰在这里碰到了坑。

        dockerfile拉下来的mysql是5.5版本,将default-character-set=utf8设置在[mysqld]中老是无法成功生成镜像,因为启动出错。

        辗转反侧了好久,才发现,在5.5版本必须这个参数设置到[mysql]段中,这样才终于完成。

        这一个大坑,特此记下。

   

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 很高兴回答您的问题。Docker可以用于部署生产环境MySQL,您可以使用Docker容器来构建MySQL服务器,并且可以让您更快、更安全地设置和部署MySQL服务器。Docker可以帮助您更轻松地实施MySQL,同时仍然可以保持高性能、可靠性和稳定性。 ### 回答2: 在生产环境使用Docker来部署MySQL数据库是一个行之有效且推荐的解决方案。以下是使用Docker部署生产环境MySQL的步骤: 首,我们需要确保所需的MySQL镜像可从Docker Hub获取。我们可以使用以下命令拉取最新版本的MySQL镜像: ``` docker pull mysql:latest ``` 在拉取镜像之后,我们可以通过运行以下命令创建并启动一个MySQL容器: ``` docker run -p 3306:3306 --name mysql-container -e MYSQL_ROOT_PASSWORD=password -d mysql:latest ``` 在此命令,我们使用`-p`参数将主机的端口 3306 映射到容器的端口 3306,以便可以在主机上访问MySQL服务。`--name`参数为容器指定一个名称,方便后续管理。`-e`参数用于指定环境变量,这我们设置了MySQL的root用户密码为"password"。`-d`参数将容器以守护进程方式运行。 成功创建并启动容器后,我们可以使用以下命令来连接到MySQL服务: ``` docker exec -it mysql-container mysql -u root -p ``` 这将在容器的命令行启动MySQL客户端,并要求输入密码。输入之前设置的密码即可登录到MySQL。 一旦登录成功,我们可以像在常规的MySQL服务器上一样管理MySQL数据库,例如创建新的数据库、用户、表等。 在部署生产环境MySQL时,我们还应该考虑对数据进行备份和持久化处理。我们可以使用Docker数据卷来实现这一点,将MySQL的数据存储在宿主机器的持久化目录。 以上是使用Docker部署生产环境MySQL的基本步骤。通过使用Docker,我们可以轻松地在任何环境部署和管理MySQL数据库,并确保其稳定性和可靠性。 ### 回答3: Docker是一种容器化技术,可以帮助开发者更方便地部署和管理应用程序。在生产环境使用Docker部署MySQL数据库可以带来许多好处。 首使用Docker可以快速部署MySQL数据库。只需在Docker上运行一个MySQL容器,就可以快速搭建一个完整的MySQL环境。这样可以大大简化部署过程,节省时间和精力。 其次,Docker使得MySQL的部署和配置变得可重复和可移植。可以将整个MySQL容器保存为镜像,然后在不同的服务器或环境轻松部署。这样可以确保在不同的生产环境使用相同的数据库配置,减少因为环境差异而引发的问题。 此外,使用Docker可以更好地隔离MySQL数据库和其他应用程序。每个Docker容器都运行在独立的隔离环境,这样可以避免不同应用程序之间的相互影响。同时,可以为每个MySQL容器指定特定的资源配额,以确保数据库性能和稳定性。 最后,Docker提供了便捷的监控和管理工具。可以使用Docker的CLI或图形化界面工具来监控MySQL容器的运行状态、日志输出和资源利用情况。此外,还可以使用Docker的自动化部署和扩容功能,根据需要自动创建和销毁MySQL容器,以实现弹性扩展。 综上所述,使用Docker部署MySQL数据库可以提高部署效率、保证配置一致性、隔离应用程序以及简化监控和管理。这些优势使得Docker成为生产环境部署MySQL的理想选择。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值