前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Docker中CentOS容器安装使用MySQL

Docker中CentOS容器安装使用MySQL

作者头像
Autooooooo
发布2020-11-09 10:19:48
2.5K0
发布2020-11-09 10:19:48
举报
文章被收录于专栏:Coxhuang

Docker中CentOS镜像使用MySQL

##1 环境&需求

#1.1 环境

代码语言:javascript
复制
Mac
Docker
 -CentOS 6.9
    -MySQL 5.7

#1.2 需求

  • 在docker中创建一个CentOS
  • 在CentOS中安装MySQL
  • 在宿主机(Mac)链接CentOS中的MySQL

#2 docker的配置

  • Docker拉取CentOS镜像
  • 创建CentOS容器
  • 进入CentOS容器

#2.1 拉取CentOS镜像

代码语言:javascript
复制
docker pull  centos:6.9

查看刚刚拉取的CentOS 6.9镜像

代码语言:javascript
复制
docker images

#2.1 创建CentOS 6.9容器

代码语言:javascript
复制
docker run -it centos:6.9  /bin/bash
# 命令注释如下:
# run: 创建容器的命令(固定格式)
# -it: 以交互式模式运行容器(一般-i-t同时出现)
# /bin/bash: 使用容器的命令输入命令(进入容器终端)

进入CentOS终端后, root@d2568b5fe7b3中@符号后面的内容指的是该容器对应的ID,容器ID不等于镜像ID

  • 查看正在运行的容器
代码语言:javascript
复制
╭─coxhuang@Cox.local ~
╰─➤  docker ps                                                                                                                                                         130 ↵
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
d2568b5fe7b3        centos:6.9          "/bin/bash"         5 minutes ago       Up 5 minutes                            happy_mcclintock
5437aa4212f8        centos:6.8          "/bin/bash"         About an hour ago   Up About an hour                        gifted_fermat

第一列CONTAINER ID是容器的ID, 也就是进入容器后, root@后面显示的那串内容

STATUS是容器的状态, 容器的状态7种

STATUS

说明

created

已创建

restarting

重启中

running

运行中

removing

迁移中

paused

暂停

exited

停止

dead

死亡

#2.2 进入/退出容器

  1. 进入容器
代码语言:javascript
复制
# 进入容器
docker attach d2568b5fe7b3
# docker attach 容器ID
代码语言:javascript
复制
╭─coxhuang@Cox.local ~
╰─➤  docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
d2568b5fe7b3        centos:6.9          "/bin/bash"         33 minutes ago      Up 33 minutes                           happy_mcclintock
5437aa4212f8        centos:6.8          "/bin/bash"         About an hour ago   Up About an hour                        gifted_fermat
╭─coxhuang@Cox.local ~
╰─➤  docker attach d2568b5fe7b3
[root@d2568b5fe7b3 /]#
  1. 退出容器
  2. exit

退出并杀死容器

代码语言:javascript
复制
╭─coxhuang@Cox.local ~
╰─➤  docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
5437aa4212f8        centos:6.8          "/bin/bash"         About an hour ago   Up About an hour                        gifted_fermat
╭─coxhuang@Cox.local ~
╰─➤  docker run -it centos:6.9  /bin/bash
[root@ced5ed59ec2c /]# ls
bin  dev  etc  home  lib  lib64  lost+found  media  mnt  opt  proc  root  sbin  selinux  srv  sys  tmp  usr  var
[root@ced5ed59ec2c /]# mkdir haha
[root@ced5ed59ec2c /]# ls
bin  dev  etc  haha  home  lib  lib64  lost+found  media  mnt  opt  proc  root  sbin  selinux  srv  sys  tmp  usr  var
[root@ced5ed59ec2c /]# exit
exit
╭─coxhuang@Cox.local ~
╰─➤  docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
5437aa4212f8        centos:6.8          "/bin/bash"         About an hour ago   Up About an hour                        gifted_fermat
╭─coxhuang@Cox.local ~
╰─➤  docker run -it centos:6.9  /bin/bash
[root@6e12db3af46f /]# ls
bin  dev  etc  home  lib  lib64  lost+found  media  mnt  opt  proc  root  sbin  selinux  srv  sys  tmp  usr  var
[root@6e12db3af46f /]#
  • Ctrl+Q+P

退出后,后台容器仍在运行

代码语言:javascript
复制
[root@6e12db3af46f /]# mkdir haha2
[root@6e12db3af46f /]# ls
bin  dev  etc  haha2  home  lib  lib64  lost+found  media  mnt  opt  proc  root  sbin  selinux  srv  sys  tmp  usr  var
[root@6e12db3af46f /]# %                                                                                                                                                     ╭─coxhuang@Cox.local ~
╰─➤  docker attach 6e12db3af46f
[root@6e12db3af46f /]# ls
bin  dev  etc  haha2  home  lib  lib64  lost+found  media  mnt  opt  proc  root  sbin  selinux  srv  sys  tmp  usr  var
[root@6e12db3af46f /]#

#3 在CentOS容器中使用MySQL

3.1 安装MySQL

  1. 安装wget
代码语言:javascript
复制
yum install -y wget
  1. 安装MySQL官方的 Yum Repository
代码语言:javascript
复制
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql57-community-release-el7-10.noarch.rpm
  1. 安装MySQL5.7
代码语言:javascript
复制
yum install -y mysql-server
  1. 启动MySQL
代码语言:javascript
复制
service mysqld start
或者
/etc/init.d/mysqld start
  1. 修改密码

https://cloud.tencent.com/developer/article/1744744

  1. 进入MySQL
代码语言:javascript
复制
mysql -u root -p

#4 保存当前镜像

  1. 退出容器
代码语言:javascript
复制
exit
  1. 提交容器
代码语言:javascript
复制
docker commit 5437aa4212f8 centos:addmysql
# docker commit 容器ID 镜像名:TAG
代码语言:javascript
复制
[root@5437aa4212f8 /]# exit
exit
╭─coxhuang@Cox.local ~
╰─➤  docker commit 5437aa4212f8 centos:addmysql
sha256:25753ae423774c946936fd22ccb73d14967b0db87956b7fc0bed167e4049c572
╭─coxhuang@Cox.local ~
╰─➤  docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
centos              addmysql            25753ae42377        7 seconds ago       442MB
centos              6.8                 82f3b5f3c58f        9 months ago        195MB
centos              6.9                 2199b8eb8390        9 months ago        195MB
mysql               5.7.21              5195076672a7        22 months ago       371MB
╭─coxhuang@Cox.local ~
╰─➤  docker run -it centos:addmysql  /bin/bash
[root@cca8b56a08c2 /]# mysql -u root -p
Enter password:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
[root@cca8b56a08c2 /]# service mysqld start
Starting mysqld:                                           [  OK  ]
[root@cca8b56a08c2 /]#
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/01/04 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Docker中CentOS镜像使用MySQL
  • #1.1 环境
  • #1.2 需求
  • #2 docker的配置
    • #2.1 拉取CentOS镜像
      • #2.1 创建CentOS 6.9容器
        • #2.2 进入/退出容器
        • #3 在CentOS容器中使用MySQL
          • 3.1 安装MySQL
          • #4 保存当前镜像
          相关产品与服务
          云数据库 SQL Server
          腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档