docker使用

关于防火墙操作

1.操作docker需要修改防火墙,就先把防火墙关闭

//查看防火墙状态
systemctl status firewalld

//停止防火墙
systemctl stop firewalld

//禁止开机自启防火墙
systemctl disable firewalld

 docker命令

//启动docker

systemctl start docker
//停止docker
systemctl stop docker

//查看docker版本
docker -v

//配置镜像加速(腾讯云那个已经自己配置了镜像加速),这里是网易的
mkdir -p /etc/docker

tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["http://hub-mirror.c.163.com"]
}
EOF

systemctl daemon-reload

systemctl restart docker

获取镜像的方式2种
//一.从docker registry上进行下载安装,安装镜像 docker pull
docker pull nginx
//二.本地docker build进行镜像构建

//查看本地docker的镜像列表
docker images

//删除镜像
docker rmi nginx:latest

//保存镜像为一个压缩包
 压缩:docker save -o nginx.tar nginx
 查看:ll

//加载压缩包为镜像
docker load -i nginx.tar

容器相关指令

有了镜像后,就可以把镜像转为容器进行运行

//查看所运行的容器及状态
docker ps
//查看所有容器,包括未运行的
docker ps -a

//创建容器解读:
- docker run :创建并运行一个容器
- --name : 给容器起一个名字,比如叫做mn
- -p :将宿主机端口与容器端口映射,冒号左侧是宿主机端口,右侧是容器端口
- -d:后台运行容器
- nginx:镜像名称,例如nginx

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


//暂停
docker pause

//容器恢复暂停
docker unpause

//停止容器
docker stop mynginx

//启动容器
docker start



//查看容器运行日志
docker logs

//进入容器执行命令
docker exec -it mn bash

//删除容器
docker rm

进入容器,修改文件(不方便,一般不用)

需求:进入Nginx容器,修改HTML文件内容,添加“传智教育欢迎您”

提示:进入容器要用到docker exec命令。

步骤

1)进入容器。进入我们刚刚创建的nginx容器的命令为:

//获取容器列表,进入想进入的容器
docker ps

结果

 然后执行进入命令



docker exec -it mynginx bash

命令解读:

docker exec :进入容器内部,执行一个命令

-it : 给当前进入的容器创建一个标准输入、输出终端,允许我们与容器交互

mn :要进入的容器的名称

bash:进入容器后执行的命令,bash是一个linux终端交互命令

2)进入nginx的HTML所在目录 /usr/share/nginx/html

容器内部会模拟一个独立的Linux文件系统,看起来如同一个linux服务器一样:

nginx的环境、配置、运行文件全部都在这个文件系统中,包括我们要修改的html文件。

查看DockerHub网站中的nginx页面,可以知道nginx的html目录位置在/usr/share/nginx/html

我们执行命令,进入该目录:

cd /usr/share/nginx/html

查看目录下文件:

3)修改index.html的内容

容器内没有vi命令,无法直接修改,我们用下面的命令来修改:

sed -i -e 's#Welcome to nginx#传智教育欢迎您#g' -e 's#<head>#<head><meta charset="utf-8">#g' index.html

在浏览器访问自己的虚拟机地址,例如我的是:http://192.168.150.101,即可看到结果:

数据卷操作

需求:创建一个数据卷,并查看数据卷在宿主机的目录位置

① 创建数据卷

docker volume create html

② 查看所有数据

docker volume ls

结果:③ 查看数据卷详细信息卷

docker volume inspect html

结果:

可以看到,我们创建的html这个数据卷关联的宿主机目录为/var/lib/docker/volumes/html/_data目录。

数据卷操作:
//创建数据卷
docker volume create html

//查看所有数据卷
docker volume ls 

//查看数据卷详细信息,包括关联的宿主机目录位置
docker volume inspect html

//删除指定数据卷
docker volume rm  html

//删除所有未使用的数据卷
docker volume prune 

创建容器并且挂载数据卷

分析:上个案例中,我们进入nginx容器内部,已经知道nginx的html目录所在位置/usr/share/nginx/html ,我们需要把这个目录挂载到html这个数据卷上,方便操作其中的内容。

提示:运行容器时使用 -v 参数挂载数据卷

直接会创建数据卷,不用手动创建
docker run --name mn -v html:/usr/share/nginx/html -p 80:80 -d nginx

docker创建mysql容器并设置数据卷

使用DockerHost(系统自己创建目录,不能规定目录在哪)

使用宿主机文件系统进行挂载数据卷(自己创建目录,自己管理数据)

 

 

1.导入镜像后进行释放

2.用镜像创建容器

 docker run \
 --name mysql \
 -e MYSQL_ROOT_PASSWORD=123456 \
 -p 3306:3306 \
 -v /tmp/mysql/conf/hmy.cnf:/etc/mysql/conf.d/hmy.cnf \
 -v /tmp/mysql/data:/var/lib/mysql \
 -d \
  mysql:5.7.25

查看日志

docker logs -f kibana

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值