Docker,具有快捷方便的特性,机器上不需要安装软件和进行各种配置,拉取镜像,一行命令即可启动服务,不使用时,一行命令关闭容器即可,快捷方便,干净、利索。建议将本地的redis、mysql、kafka等常见服务使用docker进行安装,使用时用命令行启动,不使用则关闭即可。

下面列出我本地常用的镜像。

一、本地docker添加https://registry.docker-cn.com镜像地址

在国内拉取镜像时经常出现超时现象,建议添加docker中国地址,例如

二、我本地使用的docker清单:

1、postgres
2、mysql
3、redis
4、nginx
5、mongo
6、kafka
7、rabbitmq

三、镜像命令
-- 拉取镜像。tag不写的话,则拉取最新版的镜像

docker pull 镜像名称:tag

-- 查看镜像

docker images

-- 查找镜像仓库中镜像

docker search 镜像名

-- 查找本地镜像

docker images | grep 镜像名

-- 移除镜像

docker rmi 镜像名称:tag

-- 进入容器,可以查看容器内部文件组

docker exec -it [CONTAINER ID] /bin/sh

-- 查看正在运行的容器

docker ps -a  # docker ps -a | grep <容器名>

-- 停止正在运行的容器

docker stop [CONTAINER ID]

-- 移除已经停止的容器

docker rm [CONTAINER ID]

四、各个镜像的使用

1、postgres
-- 拉取镜像

docker pull postgres:9.6

-- 运行镜像

docker run --name mypostgre -e POSTGRES_PASSWORD=root -p 54321:5432 -d postgres:9.6

解释:
run,创建并运行一个容器;
--name,指定创建的容器的名字;
-e POSTGRES_PASSWORD=password,设置环境变量,指定数据库的登录口令为password(登录名:postgres);
-p 54321:5432,端口映射将容器的5432端口映射到外部机器的54321端口;
-d postgres:9.6,指定使用postgres:9.6作为镜像。

在使用客户端连接数据库即可。

2、mysql
-- 拉取镜像

docker pull mysql:8

-- 运行镜像

docker run --name mysqllocal -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:8

-- 进入容器

-- 登录mysql

mysql -u root -p 解释: —登录名:root 密码:root

-- 修复navicat客户端登录

ALTER USER root IDENTIFIED WITH mysql_native_password BY root;

再使用客户端连接数据库即可。  

3、redis
-- 拉取镜像

docker pull redis:3.2

-- 运行镜像

docker run --name myredis -p 6379:6379 -d redis:3.2 redis-server

-- 进入容器

-- 登录redis

redis-cli

有密码的,需要登录

docker exec -it 63519b779f2f redis-cli -a ‘密码’

常用命令:

先要选择库,select [0-15]

1、查询键

keys * 查询所有的键,会遍历所有的键值,复杂度O(n)

2、键总数

dbsize 查询键总数,直接获取redis内置的键总数变量,复杂度O(1)

3、检查键是否存在

exists key 存在返回1,不存在返回0

4、删除键O(k)

del key [key...] 返回结果为成功删除键的个数

  

4、nginx
-- 拉取镜像

docker pull nginx

-- 运行镜像

docker run --name mynginx -d -p 8080:80 nginx:latest

  

5、mongo
-- 拉取镜像

docker pull mongo

-- 运行镜像

docker run -p 27017:27017 -d mongo:latest

  

6、kafka
-- 拉取镜像

zookeeker: docker pull zookeeper:latest
kafka: docker pull wurstmeister/kafka:latest

-- 运行镜像

-- 运行zookeeper

docker run -d --name myzookeeper --publish 2181:2181 --volume /etc/localtime:/etc/localtime zookeeper:latest

-- 运行kafka

docker run -d --name mykafka --publish 9092:9092 \
--link myzookeeper \
--env KAFKA_ZOOKEEPER_CONNECT=myzookeeper:2181 \
--env KAFKA_ADVERTISED_HOST_NAME=kafka所在宿主机的IP \
--env KAFKA_ADVERTISED_PORT=9092 \
--volume /etc/localtime:/etc/localtime \
wurstmeister/kafka:latest

  

7、rabbitmq

-- 拉取镜像

docker pull rabbitmq:management

-- 运行镜像

docker run -d --name rabbitmq --publish 5671:5671 \
--publish 5672:5672 --publish 4369:4369 --publish 25672:25672 --publish 15671:15671 --publish 15672:15672 \
rabbitmq:management

容器启动之后就可以访问web 管理端了 http://宿主机IP:15672,默认创建了一个 guest 用户,密码也是 guest。

Docker常用镜像的更多相关文章

  1. 基于【 Docker】四 || Docker常用镜像安装

    一.nginx安装 1.拉取镜像:docker pull nginx 2.启动容器:docker run -d -p 80:80 nginx 3.查看nginx:ps aux | grep 'ngin ...

  2. docker 系列 - 基础镜像环境和Docker常用命令整理

    =======================docker 基础镜像环境 alpine=======================可以使用 docker search 命令搜索指定的 image, ...

  3. 开发常用镜像资源替换为国内开源镜像(yum,compose,maven,docker,android sdk,npm,国内开源镜像汇总)

    一.国内开源镜像站点汇总 阿里云开源镜像站 (http://mirrors.aliyun.com/)网易开源镜像站 (http://mirrors.163.com/)中国科学技术大学开源镜像站 (ht ...

  4. Docker 常用命令——镜像

    Docker 常用命令 帮助命令 docker version    --版本信息 docker info       --详细信息 docker --help     --帮助 镜像命令 1.doc ...

  5. 3、docker常用命令:help、镜像命令、容器命令

    1.帮助命令 1.docker version 2.docker info 3.重点掌握:docker --help 2.镜像命令 1.docker,镜像,容器关系 2.docker images ( ...

  6. docker无法删除镜像,Error: No such container,附docker常用命令

    最近打算删除掉docker镜像但是发现有几个镜像就是删除不了,加了-f强制删除也不行,一直报Error: No such container的错误,最后终于找到了办法直接删除文件,步骤如下: 切换到r ...

  7. docker常用命令、镜像命令、容器命令、数据卷,使用dockerFile创建镜像,dockefile的语法规则。

    一.docker常用命令? 1. 常用帮助命令 1.1 docker的信息以及版本号 /* docker info 查看docker的信息 images2 docker本身就是一个镜像. docker ...

  8. docker(三) 镜像和容器常用命令

    一.镜像操作 1.搜索镜像 可以直接在Docker Hub 直接搜索镜像,当然也可以使用命令来搜索. docker search 名称 docker search tomcat 2.拉取镜像 dock ...

  9. Docker学习笔记二:Docker常用命令及提升拉取镜像的速度

    一.Docker命令: 1.docker images   //命令用来查看docker中所包含的镜像信息 2.docker ps -a    //命令用来查看docker中所包含所有容器信息(运行状 ...

随机推荐

  1. SLAM+语音机器人DIY系列:(二)ROS入门——1.ROS是什么

    摘要 ROS机器人操作系统在机器人应用领域很流行,依托代码开源和模块间协作等特性,给机器人开发者带来了很大的方便.我们的机器人“miiboo”中的大部分程序也采用ROS进行开发,所以本文就重点对ROS ...

  2. 整合 MyPerf4J 做Java性能监控和统计工具

    快速启动MyPerf4J MyPerf4J 采用 JavaAgent 配置方式,透明化接入应用,对应用代码完全没有侵入. 打包 项目地址: https://github.com/LinShunKang ...

  3. Spring中关于AOP的实践之AspectJ方式实现通知

    (本文中如有不当之处,恳请批评指正) AspectJ方式的简化了通知的出现复杂度.但是对配置文件的操作复杂度有了一定的提升 一. 配置通知 package com.xkx.adviceDemo; im ...

  4. react+redux+Instagram

    项目地址:https://github.com/xiaoyuqing/react-redux-instagram,喜欢的话动动手指点点赞^-^ 1.初始化项目 IndexRoute是默认路由 2.增加 ...

  5. 深入理解Java中的不可变对象

    深入理解Java中的不可变对象 不可变对象想必大部分朋友都不陌生,大家在平时写代码的过程中100%会使用到不可变对象,比如最常见的String对象.包装器对象等,那么到底为何Java语言要这么设计,真 ...

  6. 用Jenkins搭建自动构建服务

    Jenkins是BS跨平台构建工具,之前名为Hundson.wiki [chs  en]  最新windows安装包:下载 下文以1.593版本为例,讲述Jenkins的Windows版本的一些要注意 ...

  7. MongoDB 中数据的替换方法实现 --类Replace()函数功能

    关键字: MongoDB,Replace,forEach 近日接到一个开发需求,因业务调整,需要DBA协助,将MongoDB数据库中某集合的进行替换.例如我们需要将集合A中B字段中,有关<美好& ...

  8. redis的穿透和雪崩

    穿透: 从缓存中查询一个数据,查到为空,需要每次都去数据库中查询.而从数据库中查询出来也为空,也就不写入缓存.导致一个不存在的数每次都去数据库中查询,造成db系统很大压力 造成缓存穿透 解决:如果从数 ...

  9. Win7环境 搭建IIS环境。发布asp.net MVC项目到IIS(第一期)

    一.右键添加网站,输入网站基本配置信息. 二.成功添加网站后,应用程序池里会多一个应用,版本一定要改成4.0,并且模式是集成模式,否则项目报错(原因可以看配置文件中的版本信息). 三.再启用项目时可能 ...

  10. windows server 几大实时同步软件比较

    需求: 从Windows Server 主机A 到 Windows Server 主机B 之间同步目录 方案一: 1. 使用bat脚本 + 计划任务的方式 1.1 bat脚本 功能: 把主机A的C:\ ...