Dockerfile构建简单的mysql

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介:

1、编写简单的mysql的Dockerfile文件

1
2
3
4
5
6
7
8
9
10
11
12
[root@docker ~] # cd /opt/docker-file/mysql/
[root@docker mysql] # ls
Dockerfile
[root@docker mysql] # cat Dockerfile 
FROM blalor /centos
MAINTAINER molewan  "molewan@163.com"
RUN yum -y  install  mysql-server mysql
RUN service mysqld start
RUN chkconfig mysqld on
EXPOSE 3306
CMD [ "/usr/bin/mysqld_safe" ]
[root@docker mysql] # docker build -t wan/mysql .


2、查看生成的数据库镜像

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[root@docker mysql] # docker images
REPOSITORY                       TAG                 IMAGE ID            CREATED              VIRTUAL SIZE
wanlong /mysql                     latest              eb33223bfe29        About a minute ago   498.1 MB
centos123                        latest              2a4997703ec3        5 days ago           213.9 MB
nginx- file                        v1                  eabf358df7ea        6 days ago           512.2 MB
wordpress                        latest              62a9acf5fc2a        2 weeks ago          517.3 MB
nginx                            latest              bbb75b846e7b        2 weeks ago          134.5 MB
dockerui /dockerui                 latest              95c8b9dc91e0        4 weeks ago          6.13 MB
redis                            latest              34ca6ac180ad        4 weeks ago          151.2 MB
mongo                            latest              ad74160b3443        4 weeks ago          317.4 MB
registry                         latest              07d93e41c370        4 weeks ago          422.8 MB
daocloud.io /library/python        latest              a2db1214d015        4 weeks ago          689.1 MB
debian                           latest              5eb1402f0414        5 weeks ago          125.1 MB
daocloud.io /library/ubuntu        latest              8693db7e8a00        5 weeks ago          187.9 MB
centos                           latest              60e65a8e4030        9 weeks ago          196.6 MB
joedval /stress                    latest              7eb627cb08a2        12 weeks ago         214.9 MB
doumadou /centos6 .5_x86_64-base   latest              5bcd27f3a345        7 months ago         429.8 MB
lemonbar /centos6-ssh              latest              b78c71c001db        19 months ago        296.9 MB
blalor /centos                     latest              f01c1b138488        20 months ago        322.4 MB


3、使用镜像构建容器,并进行查看

1
2
3
4
5
[root@docker mysql] # docker run --name mysql123 -d -p 3306 wanlong/mysql
0eb98e3c3e60ce9082a92a2adb5c02a426e90dc1cb4cc6ddccbac40c549f5a44
[root@docker mysql] # docker ps -l
CONTAINER ID        IMAGE               COMMAND                CREATED             STATUS              PORTS                     NAMES
0eb98e3c3e60        wanlong /mysql        " /usr/bin/mysqld_saf    5 seconds ago       Up 4 seconds        0.0.0.0:32768->3306 /tcp    mysql123


4、进入容器,并进行测试(端口号以及数据库)

1
2
3
4
5
6
7
8
9
10
11
12
13
[root@docker ~] # ./in.sh 0eb98e3c3e60
- bash : BASH_FUNC_module(): line 0: syntax error near unexpected token `) '-bash: BASH_FUNC_module(): line 0: `BASH_FUNC_module() () {  eval `/usr/bin/modulecmd bash $*`' - bash : error importing  function  definition  for  `BASH_FUNC_module'
- bash -4.1 # ls
bin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  sbin  selinux  srv  sys  tmp  usr  var-
bash -4.1 # netstat -tunlp
Active Internet connections (only servers)Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID /Program  name   tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      91 /mysqld
- bash -4.1 # mysql -u root
Welcome to the MySQL monitor.  Commands end with ; or \g.Your MySQL connection  id  is 1Server version: 5.1.73 Source distribution
Copyright (c) 2000, 2013, Oracle and /or  its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and /or  itsaffiliates. Other names may be trademarks of their respectiveowners.
Type  'help;'  or  '\h'  for  help. Type  '\c'  to  clear  the current input statement.
mysql> show databases;
+--------------------+| Database           |+--------------------+| information_schema || mysql              ||  test                |+--------------------+3 rows  in  set  (0.00 sec)

5、in.sh

1
2
3
4
5
[root@docker ~] # cat in.sh 
#!/bin/bash
CNAME=$1
CPID=$(docker inspect -- format  "``.`State`.`Pid`"  $CNAME)
nsenter --target  "$CPID"  -- mount  --uts --ipc --net --pid









本文转自 冰冻vs西瓜 51CTO博客,原文链接:http://blog.51cto.com/molewan/1746463,如需转载请自行联系原作者
相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
余二五
+关注
目录
打赏
0
0
0
0
235
分享
相关文章
轻松入门MySQL:数据库关联与多表查询,构建高效的业务决策引擎(6)
轻松入门MySQL:数据库关联与多表查询,构建高效的业务决策引擎(6)
235 0
轻松入门MySQL:主键设计的智慧,构建高效数据库的三种策略解析(5)
轻松入门MySQL:主键设计的智慧,构建高效数据库的三种策略解析(5)
577 0
云数据库:从零到一,构建高可用MySQL集群
在互联网时代,数据成为企业核心资产,传统单机数据库难以满足高并发、高可用需求。云数据库通过弹性扩展、分布式架构等优势解决了这些问题,但也面临数据安全和性能优化挑战。本文介绍了如何从零开始构建高可用MySQL集群,涵盖选择云服务提供商、创建实例、配置高可用架构、数据备份恢复及性能优化等内容,并通过电商平台案例展示了具体应用。
深入了解MySQL主从复制:构建高效稳定的数据同步架构
深入了解MySQL主从复制:构建高效稳定的数据同步架构
222 1
RDS MySQL灾备服务协同解决方案构建问题之数据库备份数据的云上云下迁移如何解决
RDS MySQL灾备服务协同解决方案构建问题之数据库备份数据的云上云下迁移如何解决
PHP与MySQL的无缝集成:构建动态网站的艺术####
本文将深入探讨PHP与MySQL如何携手合作,为开发者提供一套强大的工具集,以构建高效、动态且用户友好的网站。不同于传统的摘要概述,本文将以一个生动的案例引入,逐步揭示两者结合的魅力所在,最终展示如何通过简单几步实现数据驱动的Web应用开发。 ####
PHP与MySQL的深度整合:构建高效动态网站####
在当今这个数据驱动的时代,掌握如何高效地从数据库中检索和操作数据是至关重要的。本文将深入探讨PHP与MySQL的深度整合方法,揭示它们如何协同工作以优化数据处理流程,提升网站性能和用户体验。我们将通过实例分析、技巧分享和最佳实践指导,帮助你构建出既高效又可靠的动态网站。无论你是初学者还是有经验的开发者,都能从中获得宝贵的见解和实用的技能。 ####
56 0
MySQL装机实战指南:从零开始构建高效数据库环境
通过本文的指南,您应该已经成功安装了MySQL,并对其进行了基本的配置和优化。MySQL是一个功能强大、灵活的数据库管理系统,通过不断的学习和实践,您将能够充分利用其潜力来满足您的业务需求。记住,定期备份数据库、更新软件以及进行性能监控是保持数据库环境健康和高效的关键。希望本文能对您有所帮助!
297 2
构建MySQL8.0.26镜像和容器
MySQL8.0.26 percona-toolkit Dockerfile
221 3
规划阿里云RDS跨区迁移并构建容灾与备份策略
规划阿里云RDS(Relational Database Service)跨区迁移并构建容灾与备份策略
266 2
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等