优秀的编程知识分享平台

网站首页 > 技术文章 正文

docker常用指令及安装rabbitMQ

nanyue 2025-01-06 14:43:03 技术文章 5 ℃

一、docker常用指令

启动docker:
systemctl start docker

停止docker:
systemctl stop docker

重启docker:
systemctl restart docker

查看docker状态:
systemctl status docker

开机启动:
systemctl enable docker
docker version
docker info
docker --help

1、镜像命令

查看镜像
docker images
搜索镜像
docker search 某个XXX镜像名字
下载镜像
docker pull 镜像名字[:TAG]
docker rmi 某个XXX镜像名字ID
删除镜像
删除单个
docker rmi -f 镜像ID
删除多个
docker rmi -f 镜像名1:TAG 镜像名2:TAG
删除全部
docker rmi -f $(docker images -qa)

2、容器命令

2.1新建并启动容器
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
OPTIONS说明
OPTIONS说明(常用):有些是一个减号,有些是两个减号

--name="容器新名字": 为容器指定一个名称;
-d: 后台运行容器,并返回容器ID,也即启动守护式容器;
-i:以交互模式运行容器,通常与 -t 同时使用;
-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用;
-P: 随机端口映射;
-p: 指定端口映射,有以下四种格式
ip:hostPort:containerPort
ip::containerPort
hostPort:containerPort
containerPort
#使用镜像centos:latest以交互模式启动一个容器,在容器内执行/bin/bash命令。
docker run -it centos /bin/bash

2.2、列出当前所有正在运行的容器
docker ps [OPTIONS]
OPTIONS说明
OPTIONS说明(常用):

-a :列出当前所有正在运行的容器+历史上运行过的
-l :显示最近创建的容器。
-n:显示最近n个创建的容器。
-q :静默模式,只显示容器编号。
--no-trunc :不截断输出。

2.3容器启动、停止、退出、删除
退出容器,两种退出方式
exit 容器停止退出
ctrl+P+Q 容器不停止退出
启动容器
docker start 容器ID或者容器名
重启容器
docker restart 容器ID或者容器名
停止容器
docker stop 容器ID或者容器名
强制停止容器
docker kill 容器ID或者容器名
删除已停止的容器
docker rm 容器ID
一次性删除多个容器
docker rm -f $(docker ps -a -q)
docker ps -a -q | xargs docker rm

2.4 重要
启动守护式容器
docker run -d 容器名

查看容器日志
docker logs -f -t --tail 容器ID
-t 是加入时间戳
* -f 跟随最新的日志打印
* --tail 数字 显示最后多少条

查看容器内运行的进程
docker top 容器ID

查看容器内部细节
docker inspect 容器ID

进入正在运行的容器并以命令行交互
docker exec -it 容器ID bashShell
docker exec -it 1212221 /bin/bash

重新进入docker attach 容器ID
上述两个区别
attach 直接进入容器启动命令的终端,不会启动新的进程
exec 是在容器中打开新的终端,并且可以启动新的进程

从容器内拷贝文件到主机上
docker cp 容器ID:容器内路径 目的主机路径
从主机内拷贝文件到容器上
docker cp 目的主机路径 容器ID:容器内路径

docker commit提交容器副本使之成为一个新的镜像
docker commit -m=“提交的描述信息” -a=“作者” 容器ID 要创建的目标镜像名:[标签名]

保存docker镜像
docker save -o es.tar elasticsearch
导入docker镜像
docker load -i /home/es.tar

3、容器数据卷

容器内添加
直接命令添加
命令
docker run -it -v /宿主机目录:/容器内目录 centos /bin/bash

命令(带权限)
docker run -it -v /宿主机绝对路径目录:/容器内目录:ro 镜像名

dockerfile:
# volume test
FROM centos
VOLUME ["/dataVolumeContainer1","/dataVolumeContainer2"]
CMD echo "finished,--------success1"
CMD /bin/bash

docker build
docker build [OPTIONS] PATH | URL |
-f :指定要使用的Dockerfile路径;
--tag, -t: 镜像的名字及标签,通常 name:tag 或者 name 格式;可以在一次构建中为一个镜像设置多个标签。
docker build -f /docker/dockerFile/dockerfile -t mycentos7:1.0 .

二、docker 安装rabbitMQ

rabbitmq
docker run -d -p 5672:5672 -p 15672:15672 --name rabbitmq imageID
1、进入docker hub镜像仓库地址:https://hub.docker.com/

2、搜索rabbitMq,进入官方的镜像,可以看到以下几种类型的镜像;我们选择带有“mangement”的版本(包含web管理页面);

3、拉取镜像
docker pull rabbitmq:management
docker images 查看所有镜像

4、根据下载的镜像创建和启动容器
启动镜像(默认用户名密码),默认guest 用户,密码也是 guest
docker run -d --hostname my-rabbit --name rabbit -p 15672:15672 -p 5672:5672 rabbitmq:management

启动镜像(设置用户名密码)
docker run -d --hostname my-rabbit --name rabbit -e RABBITMQ_DEFAULT_USER=user -e RABBITMQ_DEFAULT_PASS=password -p 15672:15672 -p 5672:5672 rabbitmq:management

docker run -d --name rabbitmq3.7.7 -p 5672:5672 -p 15672:15672 -v `pwd`/data:/var/lib/rabbitmq --hostname myRabbit -e RABBITMQ_DEFAULT_VHOST=my_vhost -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin df80af9ca0c9

说明:

-d 后台运行容器;
--name 指定容器名;
-p 指定服务运行的端口(5672:应用访问端口;15672:控制台Web端口号);
-v 映射目录或文件;
--hostname 主机名(RabbitMQ的一个重要注意事项是它根据所谓的 “节点名称” 存储数据,默认为主机名);
-e 指定环境变量;(RABBITMQ_DEFAULT_VHOST:默认虚拟机名;RABBITMQ_DEFAULT_USER:默认的用户名;RABBITMQ_DEFAULT_PASS:默认用户名的密码)

5、使用命令:docker ps 查看正在运行容器

6、可以使用浏览器打开web管理端:http://Server-IP:15672

三、redis

redis
docker run -d -p 6379:6379 --name redis imageID

四、elasticsearch

elasticsearch 不指定启动默认2G堆内存
docker run -e ES_JAVA_OPTS="-Xms=256m -Xmx=256m" -d -p 9200:9200 -p 9300:9300 --name ES01 imageID

最近发表
标签列表