Docker学习--笔记

Docker

一、安装docker

1、检查有没有安装docker
yum list installed | grep docker
2、更新yum
yum update
3、安装需要的软件包
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
4、设置yum源
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
5、安装docker
yum install -y docker-ce
6、验证是否安装成功(有client和service两部分表示安装启动都成功了)
docker version
7、查看是否启动
ps -ef|grep docker
8、启动并加入开机启动
sudo systemctl start docker
sudo systemctl enable docker

二、镜像加速器

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-43qdeb2c-1617762517409)(C:\Users\86151\AppData\Roaming\Typora\typora-user-images\image-20201018022005526.png)]

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://za4ms05y.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

查看镜像加速地址

cat /etc/docker/daemon.json

三、docker常用命令

systemctl start docker  启动docker
systemctl enable docker 开机自启动
systemctl stop docker  停止docker
systemctl restart docker 重启docker
systemctl status docker 查看docker状态

四、镜像相关命令

docker images 查看docker里所有的镜像
docker search redis 搜索redis镜像
docker pull redis:5.0 下载redis5.0镜像
docker rmi 4cdbec704e47 根据id删除镜像
docker rmi redis:latest 根据版本号删除镜像
docker images -q 列出所有的镜像列表
docker rmi docker images -q 全部删除镜像

五、容器相关命令

docker ps -a 查看启动容器的状态


启动容器

以下命令使用centos镜像启动一个容器,参数为以命令行模式进入该容器

docker run -it --name=c7 centos:7 /bin/bash
参数说明:
	-i:交互式操作,保持容器运行。-it创建后自动进入容器,退出容器后,容器自动关闭
	-t:终端。
	-d:后台方式,以守护方式运行,退出后,不会关闭容器。
	centos:centos镜像
	/bin/bash:放在镜像名称后的是命令,这里我们希望有个交互式的shell,因此用的是/bin/bash
	-it:创建的一般是交互式容器,-id创建的一般是Wie守护容器

要退出终端,直接输入exit

进入容器

docker exec -it c2(名称name) /bin/bash
docker stop c2 #停止容器
docker start c2 #启动容器
docker rm c2 #删除容器
docker ps -aq #列出所有容器的id
docker rm `docker ps -aq` #一把删完
docker inspect c2 #查看容器的信息

六、Docker应用部署

1、Redis部署

docker search redis
docker pull redis:5.0
#创建容器 映射端口
docker run -id --name=wxb_redis -p 6379:6379 redis:5.0
#使用外部机器连接redis
docker exec -it wxb_redis /bin/bash
docker exec -it wxb_redis redis-cli
redis-cli.exe -h 192.168.1.5 -p 6379

注意:

redis.conf可以自己创建或者下载对应版本
在redis.conf内:
	1)注释掉bind 127.0.0.1 ,首行添加#即为注释
	2)daemonize默认为no,否则无法编译
	

配置解释:

配置作用
–privileged=true让容器内的root有真正的root权限,否则容器内的root只有外部普通用户权限
-p 6379:6379把容器内的6379端口映射到宿主机6379端口
-v /root/redis/redis.conf:/etc/redis/redis.conf把宿主机配置好的redis.conf放到容器内的这个位置中
-v /root/redis/data:/data把redis持久化的数据在宿主机内显示,做数据备份
redis-server /etc/redis/redis.conf让redis按redis.conf的配置启动,而不是无配置启动
-appendonly yesredis启动后开启持久化

2、Mysql部署

#搜索mysql镜像
docker serach mysql

#拉取mysql镜像
docker pull mysql:5.6

#创建目录,在/root目录下创建mysql目录用于存储mysql的数据信息
mkdir ~/mysql
cd ~/mysql

#简单的创建容器
docker run -itd --name wxbsql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.6

#创建容器,设置映射端口,目录映射,使用数据卷
docker run -id \
-p 3306:3306 \
--name=wxbsql \
-v $PWD/conf:/etc/mysql/conf.d \
-v $PWD/logs:/logs \
-v $PWD/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
mysql:5.6

#进入容器
docker exec -it wxbsql /bin/bash
#进入mysql
mysql -uroot -p123456

3、Tomcat部署

#搜索tomcat镜像
docker search tomcat
#拉取tomcat镜像
docker pull tomcat:8

#创建目录,在/root目录下创建tomcat目录用于存储tomcat信息
mkdir ~/tomcat
cd ~/tomcat

#创建容器,设置映射端口,目录映射,使用数据卷
docker run -id --name=wxb_tomcat \
-p 8080:8080 \
-v $PWD:/usr/local/tomcat/webapps \
tomcat:8

#可以直接访问了
mkdir wxb
[root@localhost tomcat]# cd wxb
[root@localhost tomcat]# vim index.html
#里面书写内容
	aaa
#进入容器
docker exec -it wxb_tomcat /bin/bash

访问:http://192.168.1.5:8080/wxb

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-D4aQTscf-1617762517411)(C:\Users\86151\AppData\Roaming\Typora\typora-user-images\image-20201018224026526.png)]

七、Docker原理

1、容器转镜像

docker commit 容器id 镜像名称:版本号          #容器转镜像
docker save -o 压缩文件名称 镜像名称:版本号     #镜像转压缩 
docker load -i 压缩文件名称                  #压缩文件转容器
#########################################################################
docker commit 84f8352ad251 wxb_mysql_img:1.0  #容器转镜像
docker images
docker save -o wxbsql.tar wxb_mysql_img:1.0   #镜像转压缩
ls
docker rmi wxb_mysql_img:1.0                  #删除原有镜像
docker load -i wxbsql.tar                     #tar还原镜像
docker run -itd --name wxbsql2 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 wxb_mysql_img:1.0   #镜像生容器
  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值