Alpine 安装 MySQL
需求
使用Alpine安装MySQL
步骤
1. 创建容器
# 创建一个alpine容器,并命名为 alpine-mysql
docker run -it --name alpine-mysql alpine
2. 更新apk
apk
是Alpine 自带的包管理器,使用Alpine软件前应先更新一下。
apk update
3. 安装MySQL
# alpine 中MySQL 用的就是MariaDB
apk add --no-cache mysql mysql-client
# 或
apk add mariadb mariadb-client
如下:mysql
可执行文件指向mariadb
安装openrc
openrc
是Alpine服务控制器,负责Alpine服务启动,添加、删除、更新及启动停止等。安装它有助于将MySQL服务管理起来。
apk add openrc --no-cache
openrc
相关详见 https://editor.csdn.net/md/?articleId=122838103
安装完成后执行命令rc-status
可以查看本地机上服务的当前状态,如上图所示。
4. 启动
- 将 mariadb 注册为服务
rc-update add mariadb default
- boot openrc
touch /run/openrc/softlevel
- 创建数据库
/etc/init.d/mariadb setup
- 启动 mariadb 服务
rc-service mariadb start
启动后可以使用 rc-sttaus
查看到 mariadb
已经启动
6. 连接测试
客户端交本地连接
客户端远程连接
远程客户端连接需要容器与外网通信,而当前的容器并不支持外部网络访问,我们可以先将容器commit
为一个新的镜像,这相当于我们制作了一个自己的镜像,然后在指定端口映射访问。
提交新容器
docker commit -a "xzbd" -m "a mysql image based on alpine" a88de0896ee5 alpine-mysql:v1
其中-a
表示作者,-m
表示描述,a88de0896ee5
是当前容器的ID, alpine-mysql:v1
是新的镜像名。
启动容器
docker run -it --name alpine-mysql-server -p 3306:3306 alpine-mysql
使用新镜像 alpine-mysql:v1
实例化一个容器,命名为 alpine-mysql-server
,指定端口映射为本地3306到容器3306。第一个3306是本地端口,第二个3306是容器内的端口。
使用Navicat连接
7. 设置账户密码
mysqladmin -u root password "123456"
遇到的问题
- You are attempting to run an openrc service on a system which openrc did not boot.
该问题该问题根据提示执行 touch /run/openrc/softlevel
即可解决。
- Datadir ‘/var/lib/mysql’ is empty or invalid.
同样根据提示执行 /etc/init.d/mariadb setup
即可解决。
总结
通过一步一步搭建环境,实现了Alpine安装MySQL。产出的alpine-mysql:v1
镜像可以保留,已备以后使用。
回顾一下,将本文中左右命令处理,写成一个DockerFile文件,使用 docker build
也可以实现制作自己的MySQL镜像。
Alpine 安装 MySQL相关推荐
- alpine安装及使用
1.下载alpine 清华大学镜像站 alpine官网下载 2.安装alpine 以iso为例,以esxi为例 直接创建虚拟机,然后创建CD/DVD选择上传的iso镜像,然后配置一下机器cpu.内存等 ...
- Alpine安装与使用
1.下载alpine 清华大学镜像站 alpine官网下载 2.安装alpine 以iso为例,以esxi为例 直接创建虚拟机,然后创建CD/DVD选择上传的iso镜像,然后配置一下机器cpu.内存等 ...
- Linux安装mysql,一步到位!
今天在腾讯云上面买了一个服务器,想要把自己的项目部署一下,就要安装mysql,以下是我的安装步骤,在网上有很多人把install敲错了,还有的少-get,种种错误试完之后,我决定发一篇 sudo ap ...
- liunx上mysql源码安装mysql,搞定linux上MySQL编程(一):linux上源码安装MySQL
[版权声明:尊重原创,转载请保留出处:blog.csdn.net/shallnet,文章仅供学习交流,请勿用于商业用途] 1. 首先下载源码包: ftp://ftp.jaist.ac.jp/pub/m ...
- Docker学习(八)-----Docker安装mysql
安装MySQL 5.*版本 1.搜索镜像 docker search mysql 2.下载镜像 docker pull mysql:5.6 3.创建并启动MySQL容器 docker run -d - ...
- centos7 安装 Mysql 5.7.28,详细完整教程
1. 下载 MySQL yum包 wget http://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm 2.安装MySQL源 r ...
- linux离线安装g 报错,Linux离线安装mysql 5.6详细步骤
tar -zxvf mysql-5.6.40-linux-glibc2.12-x86_64.tar.gz 8.将解压好的文件夹重命名为mysql mv mysql-5.6.40-linux-glibc ...
- rpm方式安装mysql5.7.24_linux centOS 7安装mysql 5.7.24
前言 请务必先把整篇文章通读一遍,特别是后面的问题列表,以致于在安装过程中出现问题后不会心惊胆颤. 0.在安装mysql之前,查看是否已安装,及其删除方式 rpm -qa|grep mysql #查看 ...
- rpm怎样在win安装mysql_centos7.6安装mysql的正确步骤
1.centos7下安装mysql linux下mysql安装包快速下载 链接: https://pan.baidu.com/s/1eEvgRCAf540bWAM52icVAw 提取码: 9jv0 官 ...
最新文章
- CSS之布局(盒子的水平布局)
- 一篇文章读懂阿里云负载均衡性能保障型实例
- 专访浪潮王虹莉 探互联网服务器市场的未来
- getplotlyoffline(‘http://cdn.plot.ly/plotly-latest.min.js‘)无法下载如何解决
- zabbix 监控 tomcat/jvm性能
- js 数组遍历符合条件跳出循环体_C++模拟面试:从数组“紧凑”操作说开来
- SQL Server中行列转换 Pivot UnPivot (转载)
- android 组件消失了,Android 12 2.2 开发者预览版发布:修复桌面小组件消失等问题...
- oracle解析关闭,读书笔记:深入解析oracle-第一章 数据库的启动和关闭
- Aboutface3交互设计精髓笔记0001
- svn创建版本库以及创建其下目录
- 钢铁侠机器人公仔_自己再演一遍复联!优必选钢铁侠 MK50 机器人评测
- layui上传文件的choose只触发一次
- ✨❤️CSDN标题党❤️,创意无极限,那不直接全网站都花的飞起?
- 《高等统计物理学》5:非平衡态统计物理初步
- 高中数学必修5;不等式常用题型解题巧技巧(名师总结)
- 大学一路走来,学习互联网全靠这几个网站,最终拿下了一把offer
- 打工人的Linux(存储管理)
- L1-007 念数字 (10分) 输入一个整数,输出每个数字对应的拼音。当整数为负数时,先输出fu字。十个数字对应的拼音如下: 0: ling 1: yi 2: er 3: san 4: si 5:
- MapReduce 自定义计数器
热门文章
- Linux Cobbler批量装机
- 真北敏捷公众号里的群友
- 淘宝API 获取购买到的商品订单详情
- java Servlet mysql json ECharts图表生成实战-罗绍岗-专题视频课程
- Part 1: 3.1 时序逻辑~3.2 flip flop 触发器寄存器
- 【Python】Python基本概念、print()输出函数、标准数据类型、type()函数与isinstance()函数、数据类型转换、变量与变量名的命名规则、注释
- Saber吃苹果,保持每箱苹果数量递增
- [wayfarer]PetShop数据访问层之数据库访问设计
- DZ论坛+克米模板3.5版本全解密+教程
- oracle ebs和java_Oracle EBS Form Builder使用Java beans创建窗体