Docker学习(四)

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 Tair(兼容Redis),内存型 2GB
简介: Docker学习(四)

安装mysql

docker pull mysql:5.6

运行

docker run -p 3306:3306 --name mysql -v /mydocker/mysql/conf:/etc/mysql/conf.d -v/mydocker/mysql

v是把主机目录挂载到docker容器下的目录,实现数据共享。

-e初始化root用户的密码

-d后台运行mysql

进入容器

docker exec -it 5d8c0efe52dc /bin/bash

2019032009324795.png

拷贝数据库

docker exec 5d8c0efe52dc sh -c ' exec mysqldump --all-databases -uroot -p"123456" ' > /mydocker/all-databases.sql

安装redis

docker pull redis:3.2

运行

docker run -p 6379:6379 -v /mydocker/myredis/data:/data -v /mydocker/myredis/conf/redis.conf:/usr/local/etc/redis/redis.conf -d redis:3.2 redis-server /usr/local/etc/redis/redis.conf --appendonly yes

在本机的/mydocker/myredis/conf/redis.conf目录下新建redis.conf配置文件并把内容复制进去,需要修改配置的时候就可以直接在本机上面修改。

客户端连接

docker exec -it b57fddd2b59e redis-cli

把容器变成新的镜像

docker commit -a lq -m "new redis" 0ddae18d4ed7 redis:3.25

-a表示作者,-m说明

本地镜像推送至阿里云仓库

https://cr.console.aliyun.com/cn-hangzhou/repositories

20190320102120144.png

下一步选择本地仓库,创建完后点击进去管理

$ sudo docker login --username=tb0803413_2013 registry.cn-hangzhou.aliyuncs.com
$ sudo docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/bushro/myredis:[镜像版本号]
$ sudo docker push registry.cn-hangzhou.aliyuncs.com/bushro/myredis:[镜像版本号]

安装Rabbitmq

拉取镜像,带有manager的是带有web管理界面的

docker pull rabbitmq:3.7.7-management

查看镜像

docker images

20190322093142724.png

运行

docker run -d --name rabbitmq3.7 -p 5672:5672 -p 15672:15672 -v /rabbitmq/data:/var/lib/rabbitm

参数说明


-d 后台运行容器;


--name 指定容器名;


-p 指定服务运行的端口(5672:应用访问端口;15672:控制台Web端口号);


-v 映射目录或文件;


--hostname  主机名(RabbitMQ的一个重要注意事项是它根据所谓的 “节点名称” 存储数据,默认为主机名,用hostname就可以查看);


-e 指定环境变量;(RABBITMQ_DEFAULT_VHOST:默认虚拟机名;RABBITMQ_DEFAULT_USER:默认的用户名;RABBITMQ_DEFAULT_PASS:默认用户名的密码)


进入管理页面


20190322093900430.png

安装elasticsearch

docker pull elasticsearch:2.4.6

由于elasticsearch在初始化的时候会占用2g的堆内存空间,所以在启动的时候需要把设置下,否则会启动失败。

web通信端口默认是9200,分布式的各个节点的通信端口默认是9300

docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9200:9200 -p 9300:9300 --name ES01 镜像id

查看

2019032722052962.png


相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
7月前
|
运维 虚拟化 开发者
Docker-全面详解(学习总结---从入门到深化)
Docker-全面详解(学习总结---从入门到深化)
125 1
|
7月前
|
分布式计算 Java Linux
【深入浅出Docker原理及实战】「原理实战体系」零基础+全方位带你学习探索Docker容器开发实战指南(Dockerfile使用手册)
Docker 是一套构建在 Linux 内核之上的高级工具,旨在帮助开发人员和运维人员更轻松地交付应用程序和依赖关系,实现跨系统和跨主机的部署。使用安全且轻量级的容器环境来实现这一目标。容器可以手动创建,也可以通过编写 Dockerfile 自动创建。开发人员和运维人员可以将应用程序及其依赖打包到容器中,实现应用程序的可移植性和环境一致性。
264 5
【深入浅出Docker原理及实战】「原理实战体系」零基础+全方位带你学习探索Docker容器开发实战指南(Dockerfile使用手册)
|
2月前
|
存储 Ubuntu Linux
学习docker
学习docker
40 1
|
2月前
|
NoSQL Linux Redis
Docker学习二(Centos):Docker安装并运行redis(成功运行)
这篇文章介绍了在CentOS系统上使用Docker安装并运行Redis数据库的详细步骤,包括拉取Redis镜像、创建挂载目录、下载配置文件、修改配置以及使用Docker命令运行Redis容器,并检查运行状态和使用Navicat连接Redis。
336 3
|
2月前
|
运维 Kubernetes 开发者
Docker Swarm学习
【10月更文挑战第5天】
42 3
|
2月前
|
Kubernetes Linux 持续交付
docker容器学习
【10月更文挑战第1天】
45 1
|
3月前
|
存储 Ubuntu Docker
Docker学习
Docker学习
66 4
|
2月前
|
Linux 应用服务中间件 Shell
docker学习--docker容器镜像常用命令大全(简)
本文档详细介绍了Docker中的镜像命令与容器管理命令。镜像命令部分涵盖了镜像搜索、下载、上传等操作;容器管理命令则包括了容器的创建、启动、停止、删除及日志查看等功能。通过具体示例,帮助用户更好地理解和使用Docker相关命令。
186 0
|
2月前
|
Shell 应用服务中间件 nginx
docker学习--最详细的docker run 各子命令解释与应用
`docker run` 是 Docker 中用于启动容器的基本命令。常用子命令包括 `-i`(交互模式)、`-t`(分配终端)、`-d`(后台运行)、`-p`(端口映射)、`--name`(指定容器名)。例如,`docker run -it nginx:1.20 /bin/bash` 可以创建并进入交互式容器。使用 `-d` 可在后台运行容器,`-p` 可将容器端口映射到主机端口,`--name` 则用于自定义容器名称以便管理。
298 0
|
4月前
|
网络协议 Shell Docker
docker 学习之路
docker 学习之路
42 1