docker命令

在这里插入图片描述

yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum list docker-ce --showduplicates | sort -r
yum install docker-ce
yum install docker-ce-17.12.0.ce

阿里云镜像

[root@localhost ~]# cat /etc/docker/daemon.json 
{
	"registry-mirrors":[
		"https://6kx4zyno.mirror.aliyuncs.com",
		"https://ustc-edu-cn.mirror.aliyuncs.com",
		"http://hub-mirror.c.163.com"
	]
}

systemctl daemon-reload
systemctl restart docker 
docker info

常用操作

systemctl status docker
systemctl start|restart|stop docker 
docker info
docker version

镜像操作

docker images
docker rm -f 镜像name
docker rm -f 镜像id
docker pull 镜像:tag
docker search 镜像

保存镜像到本地
docker save 镜像name -o 指定文件路径

载入镜像到docker
docker load -i 本地镜像文件路径

容器操作

启动容器
docker start 容器id或者容器name
docker restart 容器id或者容器name

停止容器
docker stop 容器id或者容器name

强制停止容器
docker kill 容器id或者容器name

进入容器
docker attach 容器id或者容器name

不退出容器退出交互
ctrl p q

退出容器
exit

新建启动容器
docker run 镜像名
docker run [options] centos

docker run 参数
交互式
-i
-t

守护进程后台运行
-d

数据卷挂载文件
-v 宿主机文件目录:容器目录

映射端口
-p 宿主机端口:容器内端口

指定容器名字
--name xxx

容器退出后自动删除
--rm

查看正在运行容器
docker ps

查看所有的容器
docker ps -a

查看所有容器id
docker ps -a -q

删除所有容器
docker rm -f $(docker ps -a -q)

在容器外部执行命令
docker exec 容器id 执行的命令
docker exec f1443ff565bb ls 

复制容器内文件到本地
docker copy 容器id:容器目录 本地目录
复制一个文件
docker cp 834f803eaf67:/etc/nginx/conf.d/default.conf /nginx/default.conf
复制整个目录
docker cp 74106420c8aa:/etc/nginx .


--后台启动nginx,挂载文件,映射端口
docker run --rm -d -p 80:80 \
	--name nn \
	-v /nginx/nginx.conf:/etc/nginx/nginx.conf \
	-v /nginx/default.conf:/etc/nginx/conf.d/default.conf \
	nginx

查看日志
docker logs 容器id或者容器name
实时日志
docker logs -f 容器id或者容器name
实时日志加上时间戳
docker logs -tf 容器id或者容器name
查看最后5行
docker logs --tail N 容器id或者容器name
docker logs --tail 5 46c773d4c58a


将容器打包成镜像
提交镜像到本地
-a 作者
-m 描述信息
docker commit -a="aa" -m="rename" e7654157100a wushujie/tomcat1.0
docker commit -a "gdut17" -m "add aa.txt" cc6 tomcat1.0.0


网桥
docker network

docker network ls

创建一个网桥
docker network create ems

删除网桥
docker network rm 16ca6ade01f4

查看网桥详细
docker inspect ems

启动容器时指定网桥
docker run -d --network ems tomcat

同一个网桥的容器,容器id和容器ip地址是一个映射,可以提供容器id访问
----
[root@localhost ~]# docker run -d -p 8083:8080 --network ems --name myt tomcat
b34fe51bfdac3aad495c57a540f83561c310b439406398e09eacbeaaf836199a
[root@localhost ~]# docker run -d -p 8082:8080 --network ems --name my2 tomcat
461806a4134badad9e1bd9d7e0173f654fd1ee2010b124af708e628ba727bdc6
[root@localhost ~]# docker ps
CONTAINER ID   IMAGE     COMMAND             CREATED          STATUS          PORTS                    NAMES
461806a4134b   tomcat    "catalina.sh run"   4 seconds ago    Up 2 seconds    0.0.0.0:8082->8080/tcp   my2
b34fe51bfdac   tomcat    "catalina.sh run"   13 seconds ago   Up 12 seconds   0.0.0.0:8083->8080/tcp   myt
[root@localhost ~]# docker exec -it 461806a4134b bash
root@461806a4134b:/usr/local/tomcat# curl http://myt:8080
<!doctype html><html lang="en"><head><title>HTTP Status 404 – Not Found</title><style type="text/css">body {font-family:Tahoma,Arial,sans-serif;} h1, h2, h3, b {color:white;background-color:#525D76;} h1 {font-size:22px;} h2 {font-size:16px;} h3 {font-size:14px;} p {font-size:12px;} a {color:black;} .line {height:1px;background-color:#525D76;border:none;}</style></head><body><h1>HTTP Status 404 – Not Found</h1><hr class="line" /><p><b>Type</b> Status Report</p><p><b>Description</b> The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.</p><hr class="line" /><h3>Apache Tomcat/9.0.41</h3></body></html>root@461806a4134b:/usr/local/tomcat# 
root@461806a4134b:/usr/local/tomcat# curl http://172.18.0.3:8080
<!doctype html><html lang="en"><head><title>HTTP Status 404 – Not Found</title><style type="text/css">body {font-family:Tahoma,Arial,sans-serif;} h1, h2, h3, b {color:white;background-color:#525D76;} h1 {font-size:22px;} h2 {font-size:16px;} h3 {font-size:14px;} p {font-size:12px;} a {color:black;} .line {height:1px;background-color:#525D76;border:none;}</style></head><body><h1>HTTP Status 404 – Not Found</h1><hr class="line" /><p><b>Type</b> Status Report</p><p><b>Description</b> The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.</p><hr class="line" /><h3>Apache Tomcat/9.0.41</h3></body></html>root@461806a4134b:/usr/local/tomcat# 
root@461806a4134b:/usr/local/tomcat# 
----



查看容器详细信息,json格式
docker inspect 4e8

Dockerfile

FROM 基于那个镜像
maintainer 作者信息
env 环境变量设置
workdir 初始工作目录
run 执行的命令
expose 对外暴露的端口
cmd 命令(不能叠加)


--自定义centos,有vi,网络
from centos
maintainer gdut17<335729510@qq.com>

env mypath /usr/local
workdir $mypath

run yum -y install vi
run yum -y install net-tools

expose 80

cmd echo $mypath
cmd /bin/bash


构建
docker build -f ./Dockerfile -t mycentos:1.0 .
执行
docker run -it mycentos:1.0
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值