博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
阿里云服务器安装docker,拉取常用的mysql,redis,nginx等镜像
阅读量:3913 次
发布时间:2019-05-23

本文共 2752 字,大约阅读时间需要 9 分钟。

一、Docker的安装和配置

1.1 去,选择Developers–—》Docs

1.2 选择Download and Install

1.3 选择 Linux

1.4 选择centos

1.5 依次根据里面提示的内容进行安装和启动

1.5.1 先卸载安装过的旧版本

sudo yum remove docker \                 docker-client \                 docker-client-latest \                 docker-common \                 docker-latest \                 docker-latest-logrotate \                 docker-logrotate \                 docker-engine

1.5.2 安装一些依赖的包

sudo yum install -y yum-utils
sudo yum-config-manager \    --add-repo \    https://download.docker.com/linux/centos/docker-ce.repo

1.5.3 安装docker引擎

sudo yum install docker-ce docker-ce-cli containerd.io

1.5.4 启动docker

sudo systemctl start docker

1.5.5 设置docker开机自启动

sudo systemctl enable docker

1.5.6 配置docker的阿里云加速启动

sudo mkdir -p /etc/dockersudo tee /etc/docker/daemon.json <<-'EOF'{
"registry-mirrors": ["https://xp4abd48.mirror.aliyuncs.com"]}EOFsudo systemctl daemon-reloadsudo systemctl restart docker

把上述的复制粘贴到自己的服务器上,就可以让自己的docker拥有阿里云的加速镜像服务了。

二、Docker拉取镜像和启动容器

2.1 拉取mysql5.7和启动mysql5.7容器

2.1.1 先拉取,再用docker images检查是否成功

docker pull mysql:5.7

启动mysql

sudo docker run -p 3307:3306 --name mysql \-v /mydata/mysql/log:/var/log/mysql \-v /mydata/mysql/data:/var/lib/mysql \-v /mydata/mysql/conf:/etc/mysql \-e MYSQL_ROOT_PASSWORD=root \-d mysql:5.7

第一行命令:把主机的3306端口映射到了容器的3306端口

第二行命令:把容器的log日志目录/var/log/mysql挂载到了主机的/mydata/mysql/log

第三行命令:把容器的mysql存储的数据/var/lib/mysql挂载到了主机的/mydata/mysql/data

第四行命令:把容器的配置文件/etc/mysql 挂载到了主机的/mydata/mysql/conf

第五行命令:更改mysql的密码

第六行命令:选取容器的镜像

阿里云服务器如果上述完成以后使用命令docker ps 看不到 镜像启动 可以参照这篇博文 [https://blog.csdn.net/qq_41999034/article/details/106162366]

这个就是网上解决阿里云服务器使用docker 运行mysql的时候遇到的问题以及解决办法

2.1.2 修改mysql的配置文件

cd /mydata/lscd mysql/cd conf/sudo vim my.cnf

编辑内容

[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=utf8collation-server=utf8_unicode_ciskip-character-set-client-handshakeskip-name-resolve

然后重新启动mysql

docker restart mysql

在这里一般阿里云服务器会遇到mysql不让远程连接,因此要设置

设置mysql的配置文件,先设置跳过密码登陆

skip-grant-tables

​ 设置完了之后要重启

docker restart mysql

然后以交互式的方式进入

docker exec -it mysql /bin/bash

登陆更改

mysql -u root -p

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
FLUSH   PRIVILEGES;exit;

2.2 拉取redis镜像和启动redis

docker pull redis
mkdir  mkdir -p /mydata/redis/conftouch /mydata/redis/conf/redis.confdocker run -p 6379:6379 --name redis -v /mydata/redis/data:/data \-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \-d redis redis-server /etc/redis/redis.conf

同时还要在redis的配置文件/mydata/redis/conf/redis.conf中去配置数据库持久化,内容为

appendonly yes

操作步骤

cd /mydata/rediscd conf/vim redis.confdocker restart redisdocker exec -it redis redis-cli

你可能感兴趣的文章
谈谈.NET Core IServiceProvider
查看>>
一个.NET Core下的开源插件框架Pluginfactory
查看>>
基于阿里云日志服务快速打造简版业务监控看板
查看>>
集赞有礼!进击吧! Blazor !第六期 企业内部应用建设实战
查看>>
大象起舞——微软研发如何保持创新力和敏捷性
查看>>
Newbe.ObjectVisitor 0.2.10 发布,更花里胡哨
查看>>
寻找性能更优秀的动态 Getter 和 Setter 方案
查看>>
跟我一起学.NetCore之EF Core 实战入门,一看就会
查看>>
.NET架构小技巧(8)——优待异常
查看>>
一款基于.NET Core的认证授权解决方案-葫芦藤1.0开源啦
查看>>
寻找性能更优秀的不可变小字典
查看>>
项目开发中经常有一些被嫌弃的小数据,现在全丢给 FastDFS
查看>>
EntityFramework Core上下文实例池原理
查看>>
C# 8: 可变结构体中的只读实例成员
查看>>
11座城市,58个.NET最新岗位速览,内推直通面试官!
查看>>
【招聘(深圳)】华强方特文化科技集团 .NET工程师
查看>>
ASP.NETCore小技巧:使用测试用户中间件
查看>>
.NetCore HttpClient发送请求的时候为什么自动带上了一个RequestId头部?
查看>>
.NET 5 和 C#9 /F#5 一起到来, 向实现 .NET 统一迈出了一大步
查看>>
程序员过关斩将--从未停止过的系统架构设计步伐
查看>>