docker 部署mysql详细过程(docker部署常见应用)

下面是Docker部署MySQL详细过程的完整攻略:

环境准备

  • 一台Linux服务器,推荐使用CentOS 7或Ubuntu 18.04以上版本。
  • 安装Docker,如果已经安装可以跳过此步骤。可以依照官方文档中的指引在服务器上安装Docker:https://docs.docker.com/engine/install/

部署MySQL

以下是两个示例:

示例一:使用Docker Hub上的MySQL镜像

  1. 拉取MySQL官方镜像
docker pull mysql
  1. 启动并运行MySQL容器
docker run -p 3306:3306 --name my-mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql

解释说明:

  • -p 设置MySQL容器的端口映射,将主机的3306端口映射到MySQL容器的3306端口上。
  • --name 为MySQL容器设置一个自定义名称 my-mysql
  • -e 用于设置MySQL的root用户密码,这里设置为 123456
  • -d 以后台方式启动MySQL容器。

  • 连接MySQL

使用MySQL客户端连接主机的3306端口即可连接到运行中的MySQL容器,用户名为 root,密码为 123456

示例二:使用Dockerfile构建MySQL镜像

  1. 准备Dockerfile文件
# 基于官方 MySQL 镜像
FROM mysql:latest
# 将my.cnf 配置文件复制到容器
COPY my.cnf /etc/mysql/my.cnf
# 拷贝初始化sql文件
COPY get-database.sql /docker-entrypoint-initdb.d
  1. 创建Docker镜像

在Dockerfile目录下运行以下命令:

docker build -t my-mysql-image:latest .

解释说明:

-t 标签参数,my-mysql-image:latest表示自定义镜像名称和版本,. 表示Dockerfile所在目录。

  1. 启动MySQL容器并运行

在主机上执行以下命令:

docker run -d --name my-mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 my-mysql-image:latest

4.连上启动后的MySQL

使用MySQL客户端连接主机的3306端口即可连接到运行中的MySQL容器,用户名为 root,密码为 123456

顺序执行上述步骤,当你连接到MySQL时,数据库已经部署完成。

希望这个攻略能对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:docker 部署mysql详细过程(docker部署常见应用) - Python技术站

(0)
上一篇 2023年5月15日
下一篇 2023年5月15日

相关文章

  • Docker实现分布式应用功能教程

    下面是关于”Docker实现分布式应用功能教程”的完整攻略: 什么是Docker Docker是一个轻量级的容器化平台,可以在不同的操作系统和云平台中轻松部署和管理分布式应用程序。Docker可以在应用程序和基础架构之间提供一个标准化接口,帮助开发人员更加轻松地将应用程序打包并快速交付。 Docker的优势 Docker的优势有很多,包括: 简化环境配置:D…

    Docker 2023年5月15日
    00
  • docker启动容器报错 Unknown runtime specified nvidia.

    问题复现 当我启动一个容器时,运行以下命令: docker run –runtime=nvidia 。。。。 后面一部分命令没写出来,此时报错的信息如下: docker: Error response from daemon: Unknown runtime specified nvidia. See ‘docker run –help’. 报错的信息显…

    Docker 2023年4月12日
    00
  • 【JVM故障问题排查心得】「内存诊断系列」Xmx和Xms的大小是小于Docker容器以及Pod的大小的,为啥还是会出现OOMKilled?

    为什么我设置的大小关系没有错,还会OOMKilled? 这种问题常发生在JDK8u131或者JDK9版本之后所出现在容器中运行JVM的问题:在大多数情况下,JVM将一般默认会采用宿主机Node节点的内存为Native VM空间(其中包含了堆空间、直接内存空间以及栈空间),而并非是是容器的空间为标准。 堆内存和VM实际分配内存不一致 -XshowSetting…

    Docker 2023年4月11日
    00
  • docker网络 macvlan

    docker 还开发了另一个支持跨主机容器网络的 driver:macvlan。 macvlan 本身是 linxu kernel 模块,其功能是允许在同一个物理网卡上配置多个 MAC 地址,即多个 interface,每个 interface 可以配置自己的 IP。macvlan 本质上是一种网卡虚拟化技术,Docker 用 macvlan 实现容器网络就…

    Docker 2023年4月16日
    00
  • Docker在Windows环境的搭建和使用详解

    Docker在Windows环境的搭建和使用详解 本文将为您讲解如何在Windows环境下使用Docker,并提供两个实例来说明其具体使用,具体结构如下: 安装Docker 1.1 Windows 10 Professional/Enterprise 1.2 Windows 10 Home Hello World实例 Nginx反向代理实例 总结 1. 安装…

    Docker 2023年5月16日
    00
  • Docker镜像的创建、存出、载入的方法

    Docker镜像的创建、存出、载入方法 在Docker中,镜像是用来创建容器的基础。本文将介绍Docker镜像的创建、存出、载入方法。 创建镜像 Docker镜像可以通过编写Dockerfile文件来创建,Dockerfile是一个文本文件,描述了如何构建一个Docker镜像。以下是一个简单的Dockerfile文件: FROM ubuntu:20.04 R…

    Docker 2023年5月16日
    00
  • 为什么要虚拟化,为什么要容器,为什么要Docker,为什么要K8S?

    如标题中的问题所提到的虚拟化,容器,Docker和K8s那样,我们不妨这样问:这些技术到底适用于哪些场景,有没有别的技术可以替代?这些技术的优劣在哪里? 前言 如标题中的问题所提到的虚拟化,容器,Docker和K8s那样,我们不妨这样问:这些技术到底适用于哪些场景,有没有别的技术可以替代?这些技术的优劣在哪里? 下面我将针对性地从以上几个问题的出发点,去和大…

    2023年4月10日
    00
  • 向docker镜像中传递变量的两种方式

    测试用到的python文件: #!/usr/bin/env python3 #conding: utf-8 from http.server import HTTPServer, BaseHTTPRequestHandler import json import sys import socket def hostname(): return socket.…

    Docker 2023年4月12日
    00
合作推广
合作推广
分享本页
返回顶部