资讯专栏INFORMATION COLUMN

阿里云服务器中Docker安装与镜像使用【MySQL、redis快速访问】

ormsf / 771人阅读

摘要:点击去阿里云官网,找到容器镜像服务很多的阿里云服务这里都有,如网关等等入口。以下指令正常执行无报错即拥有了阿里云镜像。


我是基于阿里云Linux内核CensOS8进行测试记录的。文章内容概况:

在Linux安装docker,之后在docker上拉取镜像(以MySQL为例),运行MySQL后在本地使用Navicat连接远程数据库。

一、Linux安装Docker

Docker有两个分支版本:Docker CE和Docker EE,即社区版和企业版。本教程基于CentOS8安装Docker CE。

1.CentOS

查看CentOS版本信息

lsb_release -a

在 CentOS 8安装docker要求系统为64位、系统内核版本为 3.10 以上,可以使用以下命令查看

uname -r

2.Docker安装

docker分为社区版和企业版,个人学习使用社区版即可。去到docker官方网站,找到开发者手册【https://docs.docker.com/get-started/overview/】。

照着官方教程开始操作:

sudo 的意思是使用超级用户。某些指令只是超级用户才有权执行。阿里云购买的服务器都会装好yum工具包,如果没有请务必安装yum工具包!

# 1.Uninstall old versionssudo yum remove docker /                  docker-client /                  docker-client-latest /                  docker-common /                  docker-latest /                  docker-latest-logrotate /                  docker-logrotate /                  docker-engine# 2.Set up the repositorysudo yum install -y yum-utilssudo yum-config-manager /    --add-repo /    https://download.docker.com/linux/centos/docker-ce.repo    # 3.Install Docker Engine (docker-ce,docker-ce-cli and containerd.io) 一直点击ysudo yum install docker-ce docker-ce-cli containerd.io

到这里,docker就安装成功了。


二、启动Docker

# 1.Start Dockersudo systemctl start docker# 2.查看docker版本dokcer version

测试Docker运行镜像服务

# 1.hell-dockerdocker run hello-world

查看镜像

# 1.View the Docker imagesudo docker images# 2.Set to enable self-startsudo systemctl enable docker

三、配置Docker镜像加速

当所有的Docker依赖包都从 Docker hub 上下载时,网络肯定是一个不可避免的问题,而使用阿里云的docker镜像就解决这个问题。

点击去阿里云官网,找到 容器镜像服务 【很多的阿里云服务这里都有,如 网关、ECS、CDN 等等入口】。每个人的镜像加速地址可能不一样,使用自己的进行加速地址才是最有效的

之后找到 镜像工具-》镜像加速器,选择对应的操作系统,执行对应的命令【我的是CentOS 8.4】。以下指令正常执行无报错即拥有了阿里云docker镜像。

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

四、拉取与连接(MySQL)

请确保Docker容器是启动的。【拉取镜像标准步骤请移步:#

在docker容器里面进行代码运行,可以使得我们极大的简化开发事物。下面以 拉取、启动、连接MySQL为例,从而熟悉所有的容器的使用

1.MySQL准备

Dokcer拉取和启动MySQL

需要实现文件挂载功能移步:【点击我查看MySQL文件挂载具体指令

# 1.Install mysql 5.7docker pull mysql:5.7# 2.Start mysql 5.7docker run -p 3306:3306 --name mysql1 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

对于上面 启动MySQL容器 的解释:

# 将容器内部 3306 端口映射到 主机的 3306 端口,即通过 主机的 3306 可以访问容器的 3306 端口-p 3306:3306# 容器名为 mysql--name mysql# 设置登陆密码为 123456,登陆用户为 root-e MYSQL_ROOT_PASSWORD=12345# 编写配置中的密码-e MYSQL_ROOT_PASSWORD=123456# 以后台方式运行-d

进入MySQL容器镜像

# 1.进入MySQL容器镜像docker exec —it 容器id bash# 2.进入mysql命令行mysql -u root -p# enter password# 修改服务器数据后,本地navicat更新同步可查看

对与 容器id 这一项,需要使用以下指令查看:

docker ps

MySQL创建新用户(密码:123456)>(不建议使用root用户开启远程连接)

# 1.创建新用户create user "pdh"@"%" identified by "123456";

如果创建的用户曾经存在过,得执行如下指令:

# 1.删除之前的用户信息drop user "user"@"%";# 2.刷新权限flush privileges

改端口和权限,查看用户信息

# 1.修改密码和权限GRANT ALL PRIVILEGES ON *.* TO "用户名"@"ip" IDENTIFIED BY "密码" WITH GRANT OPTION;# 2.查看host和user (mysql库下)select host,user,authentication_string from user;

2.阿里云配置端口

阿里云的服务器默认端口是不对外开放的,如果想要供外部访问,需要在安全组中手动添加规则。所以我们需要手动在安全组中添加规则,具体操作步骤如下:
登录阿里云服务器并进入控制台,点击【云服务器ECS】-> 【配置安全组规则】

点击【配置规则】

点击【手动添加】

好了,此时服务器3306端口已经能够被外网访问到了,下面就开始连接~

3.Navicat连接

打开本地的Navicat或其他数据库连接器:

打开数据库一看,只有一个数据库可以访问

而且也不能执行创建数据库等操作,这是因为此账户没有权限的原因。

MySQL用户权限

# 1.授权,把test库开放给pdhgrant select,insert,update,delete,create on test.* to "pdh";# 2.刷新权限flush privileges;

执行完上面的指令后,重新使用账户 pdh 连接,就会多出一个test库供使用。


五、Others拉取

查询获取镜像的常见方式如下:

# 1.search redisdocker search redis# 2.pull redis:latestdocker pull redis:latest

下面就拉取redis,在进行简单连接操作。

1.redis

# 1.pull redisdocker pull redis:latest# 2.创建配置文件mkdir -p /mydata/redis/conftouch /mydata/redis/conf/redis.conf# 3.run redisdocker run -d /-p 6379:6379 /--name redis1 /-v /mydata/redis/data:/data /-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf /redis:latest redis-server /etc/redis/redis.conf# 4.redis-cli连接redisdocker exec -it redis1 redis-cli

把6379端口在阿里云安全配置组配置以后,就可以在本地连接此redis了!

添加redis持久化:

在文件 redis.conf 中添加:

appendonly yes

保存退出,这就开启了redis的持久化机制。或者直接在run的时候添加 --appendonly yes 也能实现持久化。

具体的redis中进行哪些配置【点击我去到redis配置查看:https://redis.io/topics/config

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/125052.html

相关文章

  • 一文教您如何通过 Docker 快速搭建各种测试环境(Mysql, Redis, Elasticse

    摘要:本文主要说说如何配置阿里云的镜像加速器。通过修改配置文件来使用加速器执行下面命令验证一下速度以下载为例,看下速度下载配置了加速器过后,速度终于飚起来了。二快速安装搭建环境本节中,我们将学习如何通过快速安装与搭建环境。 欢迎关注个人微信公众号: 小哈学Java, 优质文章第一时间推送哟!! 个人网站: www.exception.site 小哈今天给大家分享的主题是,如何通过 Docker ...

    FleyX 评论0 收藏0
  • 到底什么是TAE

    摘要:回滚部署开发者每次部署的程序包会自动备份到历史版本,发布异常时,可以指定回滚部署到某一历史版本。网络方面采用了硬件防火墙设施,提供四层到七层的全面防护,防护类型包括等所有攻击方式,支持清洗和黑洞机制,还接入了防护等功能。 TAE2.0(Taobao App Engine)是针对移动互联网场景的定制化PaaS云服务,基于阿里云基础设施,采用Docker容器技术封装应用运行环境,并且针对互...

    novo 评论0 收藏0
  • 到底什么是TAE

    摘要:回滚部署开发者每次部署的程序包会自动备份到历史版本,发布异常时,可以指定回滚部署到某一历史版本。网络方面采用了硬件防火墙设施,提供四层到七层的全面防护,防护类型包括等所有攻击方式,支持清洗和黑洞机制,还接入了防护等功能。 TAE2.0(Taobao App Engine)是针对移动互联网场景的定制化PaaS云服务,基于阿里云基础设施,采用Docker容器技术封装应用运行环境,并且针对互...

    yankeys 评论0 收藏0

发表评论

0条评论

ormsf

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<