安装docker 及 docker常用镜像,常用命令

docker版本 : 18.09.3

#  重启
systemctl daemon-reload  # 启动守护进程
service docker restart # 重启

docker images #查看所有镜像
docker rmi -f 镜像名 #删除镜像
docker ps #查看所有运行中的容器
docker ps -a # 查看所有容器包括未运行的

docker stop $ContainerId 或者 容器名称 # 停止容器
docker kill $ContainerId 或者 容器名称 #强制停止容器
docker start $ContainerId 或者 容器名称 # 启动已停止的容器
docker rm $ContainerId 或者 容器名称 # 删除容器
docker logs $ContainerId 或者 容器名称 # 查看启动错误日志
# 支持http 
vi /usr/lib/systemd/system/docker.service 修改为:ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock


docker stats 容器名称 # 查看指定容器情况
docker stats -a # 查看所有容器情况

docker exec -it 容器名称 /bin/bash # 进入容器内部

#docker中 启动所有的容器命令

docker start $(docker ps -a | awk '{ print $1}' | tail -n +2)

#docker中    关闭所有的容器命令

docker stop $(docker ps -a | awk '{ print $1}' | tail -n +2)

#docker中 删除所有的容器命令

docker rm $(docker ps -a | awk '{ print $1}' | tail -n +2)

#docker中    删除所有的镜像

docker rmi $(docker p_w_picpaths | awk '{print $3}' |tail -n +2)

复制命令时不要双击选择复制!!

那样会带回车符号,粘贴时会有奇怪的bug出现

docker环境安装

docker安装

1. 安装yum-utils:
yum install -y yum-utils device-mapper-persistent-data lvm2
2. 为yum源添加docker仓库位置:
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
3. 安装docker:
yum install docker-ce
4. 启动docker:
systemctl start docker
5. 安装上传下载插件:
yum -y install lrzsz

docker compose安装

  1. 下载地址:https://github.com/docker/compose/releases
  2. 安装地址:/usr/local/bin/docker-compose
  3. 设置为可执行:sudo chmod +x /usr/local/bin/docker-compose
  4. 测试是否安装成功:docker-compose --version

mysql安装

下载镜像文件

docker pull mysql:5.7

创建实例并启动

docker run -p 3306:3306 --name mysql -v /home/mydata/mysql/log:/var/log/mysql -v /home/mydata/mysql/data:/var/lib/mysql -v /home/mydata/mysql/conf:/etc/mysql -e MYSQL_ROOT_PASSWORD=root  -d mysql:5.7

参数说明
第一个参数是 主机端口,第二个为容器端口

  • -p 3306:3306:将主机的3306端口映射到容器的3306端口
  • -v /mydata/mysql/conf:/etc/mysql:将配置文件夹挂在到主机
  • -v /mydata/mysql/log:/var/log/mysql:将日志文件夹挂载到主机
  • -v /mydata/mysql/data:/var/lib/mysql/:将配置文件夹挂载到主机
  • -e MYSQL_ROOT_PASSWORD=root:初始化root用户的密码

通过容器的mysql命令行工具连接

docker exec -it mysql mysql -uroot -proot

设置远程访问

grant all privileges on *.* to 'root'@'%' identified by '123456';
flush privileges;

进入容器文件系统

docker exec -it mysql /bin/bash

redis安装

下载镜像文件

docker pull redis:3.2

创建实例并启动

docker run -p 6379:6379 --name redis -v /mydata/redis/data:/data -d redis:3.2 redis-server --appendonly yes

使用redis镜像执行redis-cli命令连接

docker exec -it redis redis-cli

docker run -p 6379:6379 --name redis -v /home/mydata/redis/conf/redis.conf:/etc/redis/redis.conf -v /home/mydata/redis/data:/data -d redis:3.2 redis-server /etc/redis/redis.conf --appendonly yes --requirepass "Guoya006"

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

mongodb安装

下载镜像文件

docker pull mongo:3.2

创建实例并运行

docker run -p 27017:27017 --name mongo -v /mydata/mongo/db:/data/db -d mongo:3.2

使用mongo命令进入容器

docker exec -it mongo mongo

nginx 安装

docker pull nginx
docker run -p 80:80 --name nginx -d nginx
将容器内的配置文件拷贝到当前目录:docker container cp nginx:/etc/nginx .
修改文件名称:mv nginx conf
终止容器:docker stop nginx
执行命令删除原容器:docker rm nginx
docker run -p 80:80 -p 443:443 --name nginx -v /mydata/nginx/html:/usr/local/webserver/nginx/html -v /mydata/nginx/conf:/etc/nginx -v /mydata/nginx/logs:/www/logs -d nginx

安装elasticsearch

docker pull elasticsearch:2.4
docker run -p 9200:9200 -p 9300:9300 --name elasticsearch -v /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins -v /mydata/elasticsearch/data:/usr/share/elasticsearch/data -d elasticsearch:2.4
1.  进入docker内部bash:docker exec -it elasticsearch /bin/bash
2.  安装插件:plugin install mobz/elasticsearch-head
3.  测试:[http://192.168.1.66:9200/_plugin/head/](http://192.168.1.66:9200/_plugin/head/)

1.  下载中文分词器:[https://github.com/medcl/elasticsearch-analysis-ik/releases?after=v5.6.4](https://github.com/medcl/elasticsearch-analysis-ik/releases?after=v5.6.4) 的zip包,并解压后重新压缩为.tar.gz文件
2.  上传后拷贝到容器中:docker container cp elasticsearch-analysis-ik-1.10.6.tar.gz elasticsearch:/usr/share/elasticsearch/plugins
3.  进入容器压缩文件所在目录:docker exec -it elasticsearch /bin/bash
4.  进行解压操作:tar -xvf elasticsearch-analysis-ik-1.10.6.tar.gz
5.  重新启动容器:docker restart elasticsearch
6.  测试:
    *   访问header插件:打开地址[http://192.168.1.66:9200/_plugin/head/]
    *   选择复合查询,输入地址:POST:[http://192.168.1.66:9200/_analyze]
    *   输入参数:JSON:{"analyzer":"ik","text":"我们是大数据开发人员"}

maven构建镜像

command:mvn clean package docker:build
tip: Linux服务器需要开启远程api:
vi /usr/lib/systemd/system/docker.service 
修改为:
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock

商城项目启动

docker run -p 8080:8080 --name mall-admin --link mysql:db -v /etc/localtime:/etc/localtime -v /mydata/app/admin/logs:/var/logs -d mall/mall-admin:0.0.1-SNAPSHOT

docker run -p 8081:8081 --name mall-search --link elasticsearch:es --link mysql:db -v /etc/localtime:/etc/localtime -v /mydata/app/search/logs:/var/logs -d mall/mall-search:0.0.1-SNAPSHOT

docker run -p 8085:8085 --name mall-portal --link mysql:db --link redis:redis --link mongo:mongo -v /etc/localtime:/etc/localtime -v /mydata/app/portal/logs:/var/logs -d mall/mall-portal:0.0.1-SNAPSHOT
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 《Docker环境下的前后端分离部署与运维》课程脚本 [TOC] 一、Docker虚拟机常用命令 先更新软件包yu...
    mingminy阅读 3,723评论 0 0
  • 注:原文地址:http://severalnines.com/blog/mysql-docker-containe...
    空乱木阅读 11,208评论 0 7
  • runoob-docker教程 总结 查看ip 查看容器运行状态(cpu和内存这些) 进入容器内进行命令行操作 使...
    tianmac阅读 4,954评论 1 1
  • Docker 学习目标: 掌握Docker基础知识,能够理解Docker镜像与容器的概念 完成Docker安装与启...
    执笔梦一场阅读 8,662评论 2 10
  • 导语:庸先生一生创作了多部武侠小说,著名的有“飞雪连天射白鹿、笑书神侠倚碧鸳”14部。小说中塑造了很多让人印象深刻...
    万博汇读书阅读 4,664评论 0 1