`

Docker 使用心得以及部署一个Mysql container

阅读更多


最近公司在使用Docker,确实是一个很好用的东西,就像集装箱一样,一层一层的堆叠,操作简单,实用性强,性能也特别好,玩法有很多,可以结合自己项目的实际情况来定制。

 

安装 Docker

 

方法可以在官网上看,www.docker.com
在Ubuntu 14.x 以上版本是无缝安装:

$ which curl
$ sudo apt-get update
$ sudo apt-get install curl 
(如果有了curl忽略上面的3步)
$ curl -fsSL https://get.docker.com/ | sh
 

完成后,docker 就安装完成了,打 sudo docker version就可以查看当前的docker的版本号。

 

 

Mac 和 Windows的安装有点小麻烦,需要安装官方的 Docker Toolboxhttps://www.docker.com/products/docker-toolbox 实际上就是一个虚拟机,然后在虚拟机中运行Ubuntu来安装Docker。

 

下载Mysql的image

 

Mysql 可以从官方的dockerhub上去pull,也可以使用aliyun的加速服务,速度确实快不少,docker 自己的registry是假设在AWS上的,而AWS国内的访问速度简直不能忍。

docker pull mysql:5.5
 如果后面不带(tag)版本号,默认是latest的版本哦,也就是最后的一个版本,等待下载完成后,用 docker images 命令就可以看到你当前的docker都下载了哪些image。


 

开始运行这个container

image:映象,以这个mysql的image为例,可以理解成一个虚拟机装好了mysql服务,可以通过docker images命令查看
container:容器,image 启动后就是 container,可以停止和启动,但是删除后就没有了,可以通过docker ps查看当前运行的所有 container



  

因为container是无法保存数据的,随用随丢的,删除就没有了,所以不适合把数据保存在container上,所以我们把mysql的服务跑在container中,数据呢,存放在宿主机器中。

注意:以下的方案可能不适合在 Mac 和 Windows 上实施,至少是在 Mac 上不行的,我试过,会因为宿主机器的 mysql 用户和
container 中的 mysql 用户不一致而无法实现

 

在宿主机器上建立一个文件夹,用来存在 mysql 的 data (数据目录),如/home/tom/mysqldata,然后运行这个image,启动container

docker run --name db -e MYSQL_ROOT_PASSWORD=root -d -v /home/tom/mysqldata:/var/lib/mysql/bluemountain mysql:5.6 --lower_case_table_name=1
 

参数解释:

  • --name 指定 container 的名字,这里叫 db

  • -e 指定 container 中 mysql 的 root 用户密码

  • -v 目录挂载,就是把我们自己建立的数据目录,挂载到 container 中 mysql 的数据目录,这样数据就写到宿主机器了

  • --lower_case_table_name=1 指定 mysql 的一些配置

 

启动完成后,打docker ps 命令,就可以看到当前运行的所有 container

 

 

使用这个 container

 

到这里为止,mysql 的 container 就启动完成了,但是别的程序的 container 怎么用呢?其实很简单,在启动其他 container 的时候,绑定这个 container 就行。

dk run --name bm -d --link db:db bluemountain
 

--link db:db1就表示当前运行的 container 中可以使用 db1 这个名字访问名为db 的container

 

如果有错误,希望得到指正.

doen.

  • 大小: 90 KB
  • 大小: 122.7 KB
  • 大小: 111.9 KB
分享到:
评论

相关推荐

    docker-compose 一键部署nacos 集成mysql 5.7

    docker-compose 一键部署nacos 集成mysql 5.7

    MySQL5.7docker离线包

    Docker 离线安装 MySQL ...这将生成一个 docker-mysql-5.7.tar 文件。 2. 加载 Docker 镜像 接下来,使用 Docker 的 load 命令将解压的 tar 文件加载到 Docker 中。 # 加载 Docker 镜像 docker load < docker-mysql

    mysql8 docker 镜像

    Docker是一个开源的应用容器引擎,可以将应用程序及其依赖打包到一个可移植的容器中,然后发布到任何支持Docker的平台上。MySQL是一种流行的开源关系型数据库管理系统,广泛用于Web应用程序和企业级应用程序中。将...

    docker部署mysql8教程

    Docker 部署 MySQL 8 是一种流行的方法来部署 MySQL 数据库,使用 Docker 可以轻松地部署和管理 MySQL 数据库。下面是 Docker 部署 MySQL 8 的详细教程。 前置需求 在部署 MySQL 8 之前,需要满足以下前置要求: ...

    mysql 8.4.2 docker镜像包

    MySQL 8.4.2 Docker镜像包是一个将MySQL数据库与Docker容器化技术相结合的产物,它通过提供一个预配置、可移植的环境来简化数据库的部署和管理工作。随着容器技术的普及,这样的解决方案将会越来越受到开发人员和...

    docker安装skywalking+mysql

    Docker是一个流行的容器化平台,它允许我们在隔离的环境中轻松部署和管理应用程序及其依赖项。以下是对标题和描述中涉及步骤的详细解释。 首先,我们需要安装Docker。确保你的CentOS系统的内核版本高于3.10,可以...

    docker mysql8.0 镜像资源

    Docker MySQL 8.0镜像资源为开发者和系统管理员提供了一个快速、高效的方式来部署和管理MySQL数据库服务。无论是用于开发测试还是生产环境,使用Docker镜像部署MySQL都可以带来极大的便利和灵活性。随着容器技术的...

    docker镜像mysql:8.0离线加载包

    Docker 是一种开源的容器化平台,它允许开发者将应用程序和其依赖打包在一起,形成一个轻量级、可移植的容器,从而实现快速部署和运行。Docker容器技术自推出以来,就因其轻量级和便捷性得到了广泛的应用。在Docker...

    linux服务器docker离线镜像资源mysql8.4.2镜像包

    对于追求快速部署和高效运维的企业或个人来说,该“linux服务器docker离线镜像资源mysql8.4.2镜像包”能够提供一个便捷的解决方案,尤其适合网络环境受限的场合。通过合理使用该资源包,可以有效地提升部署效率,...

    docker使用Canal实现ClickHouse实时同步MySQL数据

    docker使用Canal实现ClickHouse实时同步MySQL数据

    docker mysql5.7 镜像

    通过使用Docker镜像,可以快速启动一个稳定的MySQL 5.7数据库服务,无需手动安装和配置MySQL的运行环境。这大大简化了数据库的部署流程,使得开发者能够专注于应用的开发而不是环境搭建。 MySQL 5.7版本相较于之前...

    docker mysql-8.1.0.tar

    Docker MySQL 8.1.0.tar这个文件是一个包含了MySQL 8.1.0数据库服务器软件的Docker镜像文件,它利用了Docker的技术优势,实现了MySQL数据库服务的快速、便捷部署。这个镜像文件是IT专业人员、开发人员和运维人员在...

    mysql5.7 - docker 版本

    Docker是一种新兴的容器化技术,它允许开发者将应用程序及其依赖打包成一个可移植的容器,在任何支持Docker的系统上都能一致地运行。 将MySQL 5.7版本与Docker技术结合起来,便可以在不同环境之间快速部署MySQL服务...

    docker部署mysql容器自启动并挂载数据卷.pdf

    Docker 部署 MySQL 容器自启动并挂载数据卷 Docker 是一个流行的容器化平台,提供了轻量级、可移植的解决方案来部署应用程序。... Docker 和 MySQL 的结合提供了一个快速部署和管理 MySQL 服务器的解决方案。

    mysql5.7的docker镜像

    总结以上内容,本文详细介绍了如何获取和使用MySQL 5.7的Docker镜像,包括镜像的概念、MySQL 5.7的特性、下载和运行镜像的方法,以及数据持久化的方式。通过本文,读者应能掌握如何利用Docker技术来部署MySQL 5.7...

    Docker安装MySQL 8.0.20详细教程

    一、Docker安装MySQL 8 Docker安装MySQL 8主要涉及拉取官方镜像、运行容器并进行一系列自定义配置。 二、自定义设置 存储路径:通过Docker的卷(volume)功能,可以将宿主机的目录挂载到容器内的指定路径。 端口:在...

    mysql主主部署(docker+mysql+nginx+springboot)

    Docker安装mysql8.0集群-主主(双主)部署实现 1. 主从复制的原理 2. 主主(双主)实现方案 3. 前置条件 4. 安装步骤 (1) 拉取镜像 (2) docker启动mysql容器 1. 数据卷挂载 2. 编写my.cnf文件(这一步...

    docker镜像 mysql-5.7.44.tar

    Docker是一种轻量级的虚拟化技术,它允许开发者打包应用以及应用的运行环境到一个可移植的容器中,然后可以在任何支持Docker的系统上运行。Docker镜像是一种轻量级、可执行的独立软件包,包含运行应用程序所需的所有...

    docker安装mysql8.0.33

    docker安装mysql8.0.33:包含修改加密规则及修改时区等

    docker安装部署gorse

    为了部署Gorse,你需要创建一个docker-compose.yaml文件,文件中定义了服务需要的容器,包括使用Redis、MySQL等数据库服务,以及Gorse的worker和server服务。Redis在Gorse中用于缓存,而MySQL用于存储数据。Gorse的...

Global site tag (gtag.js) - Google Analytics