Docker实战之下载Mysql、Redis、Zimg

Docker实战之下载Mysql、Redis、Zimg

一、Mysql

bash 复制代码
docker search mysql 		# 找到合适的mysql镜像,一般选STAR最多的
docker pull mysql			# 拉取mysql的镜像,不写版本默认是latest(最新版)
docker run -itd --name mysql1 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql # 根据拉取的mysql镜像创建容器mysql1并运行
docker ps					# 查看正在运行的容器
docker exec -it xxx /bin/bash	# 进入mysql容器,xxx指容器名称或id这里是容器名称是mysql1
mysql -u root -p			# 登录mysql
docker exec -it xxx env LANG=C.UTF-8 /bin/bash	# 见下方常见问题

参数数明:

  • --name mysql1:为创建的容器起个名字mysql1
  • -p 3306:3306:映射容器的3306端口到宿主机的3306端口,外部主机可以直接通过宿主机ip:3306访问到容器的MySQL服务
  • -e MYSQL_ROOT_PASSWORD=123456:设置MySQL服务root用户密码为123456,-e参数用于向容器中传递环境变量
  • env LANG=C.UTF-8 指定环境变量LANG=C.UTF-8

常见问题:

  1. Docker版本Mysql容器中不支持输入中文,可以在进入容器时更换一种可支持中文的字符集,上述命令最后一条
  2. 进入容器后不会退出,先按Ctrl p松开再按Ctrl q可挂起容器

二、Redis

bash 复制代码
docker search redis 	# 找到合适的redis镜像,一般选STAR最多的
docker pull redis		# docker拉取redis镜像,不写版本默认是latest(最新版)
docker run -itd --name myRedis -p 6379:6379 redis --requirepass "123456"	# 根据拉取的redis镜像创建容器myRedis并运行
docker ps				# 查看正在运行的容器
docker exec -it xxx redis-cli	# 在xxx容器执行redis进入客户端命令redis-cli,xxx指容器名称或id,这里容器名称时是myRedis

参数数明:

  • --name myRedis:为创建的容器起个名字myRedis
  • -p 6379:6379:映射容器的6379端口到宿主机的6379端口,外部主机可以直接通过宿主机ip:6379访问到容器的Redis服务
  • --requirepass "123456":设置Redis的访问密码为123456

三、Zimg

bash 复制代码
docker search zimg			# 找到合适的redis镜像,一般选STAR最多的
docker pull iknow0612/zimg	# 拉取zimg镜像,iknow0612/zimg STAR最多
docker images 				# 查看所有镜像
docker run -itd -p 4869:4869 --name zimg-server iknow0612/zimg	# 根据zimg镜像创建并启动容器
docker ps					# 查看启动的容器

参数数明:同上

如果为下载了桌面版可以在图形界面启动关闭容器

四、常见问题与疑惑

以mysql为例

Docker下载的mysql和本地下载的有什么区别:
  1. 安装和部署方式:传统的本地安装MySQL需要下载安装包、配置环境变量、手动创建启动服务等一系列步骤。而使用Docker安装MySQL则可以通过简单的命令将镜像下载到本地,然后一键启动容器即可使用。Docker提供了许多常用的MySQL镜像,如官方MySQL镜像、docker官方镜像、腾讯云镜像等,使得安装和部署变得更为简单和快速。
  2. 运行方式:本地安装的MySQL运行在一台机器上,且一台机器上只能运行一个MySQL实例。如果有多个MySQL实例的需求,需要进行额外的配置,可能会遇到冲突问题。而Docker中的MySQL则可以在一台机器上运行多个实例,并且每个实例都可以应用不同的配置文件,提供了更好的隔离性。
  3. 资源和性能管理:Docker容器具有轻量级和资源隔离的特点,可以更好地管理和控制MySQL实例的资源使用,例如CPU、内存等。这有助于实现更高效的资源利用和性能优化。
  4. 可扩展性和灵活性:Docker的容器化技术使得MySQL实例的扩展变得更为灵活和快速。通过简单的命令就可以实现容器的创建、删除、迁移等操作,从而方便地进行横向扩展和容灾恢复。

删除镜像或容器,移植镜像或容器等等详细信息请看Docker介绍与使用-CSDN博客

如有任何问题欢迎评论区留言

相关推荐
IT成长日记2 小时前
【Docker基础】Docker数据持久化与卷(Volume)介绍
运维·docker·容器·数据持久化·volume·
热爱生活的猴子2 小时前
阿里云服务器正确配置 Docker 国内镜像的方法
服务器·阿里云·docker
程序员岳焱5 小时前
Java 与 MySQL 性能优化:Java 实现百万数据分批次插入的最佳实践
后端·mysql·性能优化
FrankYoou6 小时前
Jenkins 与 GitLab CI/CD 的核心对比
java·docker
隆里卡那唔6 小时前
在dify中通过http请求neo4j时为什么需要将localhost变为host.docker.internal
http·docker·neo4j
疯子的模样6 小时前
Docker 安装 Neo4j 保姆级教程
docker·容器·neo4j
KK溜了溜了6 小时前
JAVA-springboot 整合Redis
java·spring boot·redis
梦在深巷、7 小时前
MySQL/MariaDB数据库主从复制之基于二进制日志的方式
linux·数据库·mysql·mariadb
Johny_Zhao8 小时前
Ubuntu系统安装部署Pandawiki智能知识库
linux·mysql·网络安全·信息安全·云计算·shell·yum源·系统运维·itsm·pandawiki
祁思妙想8 小时前
八股学习(三)---MySQL
数据库·学习·mysql