mysql redis在docker中映射宿主机文件启动

   日期:2020-10-04     浏览:227    评论:0    
核心提示:这么久了我还是没有记住这个长长的命令,所以今晚就记录一下,以后就可以直接复制运行了docker 中 MySQL运行1、直接开启使用命令 systemctl start docker 先运行 docker 容器,然后在直接如下命令运行 MySQL 镜像:docker run -p 3306:3306 --name mysql_name \-v /mydata/mysql/log:/var/log/mysql \-v /mydata/mysql/data:/var/lib/mysql \-v /my

这么久了我还是没有记住这个长长的命令,所以今晚就记录一下,以后就可以直接复制运行了

docker 中 MySQL运行

1、直接开启使用命令 systemctl start docker 先运行 docker 容器,然后在直接如下命令运行 MySQL 镜像:

docker run -p 3306:3306 --name mysql_name \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:tag(image_ID)

你要是要对命令进行修改就不可以直接复制,因为直接粘贴是不可以对上一行进行修改的,命令参数解释:

-p :端口映射(宿主机:镜像)
-v :表示docker 容器中的相关镜像的文件映射到宿主机(实际的物理机主机)外部文件。这样相关镜像的配置文件、日志文件、数据文件都不用在MySQL镜像里操作了,只需要操作在 docker 容器之外的宿主机上映射镜像文件。操作宿主机上的文件即可影响到 docker 容器里相关的镜像。
-e : MySQL镜像的密码(必须写的参数);=:后面是当前mysql 的密码
-d :表示在后台运行
–name :对当前运行的镜像起一个别名,非必写,不写系统会自动产生一个名字
\ :换行

上面命令执行完成之后,就会在 Linux 根目录下创建相应的目录。

2、进入 mydata 文件下的conf 文件创建 mysql 的配置文件并添加相应的文件内容,下次启动就可以以这个配置文件作为启动文件了。


直接复制以下文件内容,粘贴到 my.conf 文件中。

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve


3、重启刚刚运行那个MySQL镜像。

docker restart mysql_name(运行时mysql的ID)


以上就是 MySQL 镜像的运行。关闭删除镜像,详细见这篇文章。

docker 中 redis 运行

1、由于系统识别问题会和我们指定的不一致,所以我们在第一次运行 redis 时要注意是得先手动创建 redis 的 conf 文件,命令:

2、为了防止数据丢失,我们先开启redis 的 RDB 持久化机制。

appendonly yes

3、直接运行以下命令,运行 redis

docker run -p 6379:6379 --name redis_name \
-v /mydata/redis/data:/data \
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf


有用点个关注,手留余香!

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服