Docker

Docker官网:http://www.docker.com
​
Docker中文网站:https://www.docker-cn.com
​
Docker Hub官网:https://hub.docker.com (仓库)
​
​

配置加速

可以创建 /etc/docker/daemon.json 文件

写入

{
  "registry-mirrors": [
    "https://hub-mirror.c.163.com/"
  ]
}

重启

sudo systemctl daemon-reload
​
sudo systemctl restart docker

部署镜像

搜索: docker search nginx

拉取: docker pull nginx

#指定版本获取        docker pull nginx:tag

查看镜像: docker images

启动: docker run -d --name nginxcs -p 3344:80 nginx

启动MySQL

docker run --name 显示容器名 -p 3306:3306  -e MYSQL_ROOT_PASSWORD=数据库密码  -d mysql:5.7 

查看 docker ps -a

本机测试: curl localhost:3344

进入 docker exec -it nginxcs /bin/bash 

查看容器日志 docker logs 容器id

# -t 显示时间戳

# -f 打印最新的日志 # --tail 数字 显示多少条!

删除镜像:(强制删除 docker rmi -f 镜像id)

docker ps 

docker rm -f $(docker ps -aq)

docker stop $(docker ps -aq)

docker rmi -f $(docker images -aq)

镜像Commit

#docker commit 提交容器副本使之成为一个新的镜像!
语法
docker commit -m="提交的描述信息" -a="作者" 容器id 要创建的目标镜像名:[标签名]
docker commit -m="cs" -a="ahao" cc78168da2d3 nginx02:2.0

将自己的镜像打包

#语法
docker save -o 镜像名.tar 镜像名:tag
docker save -o nginx02.tar nginx02:2.0

加载镜像

#语法
docker load -i 镜像名.tar

将本地文件传入docker

#语法
docker cp 本地文件路径 容器ID/容器NAME:容器内路径
#测试:
docker cp /home/favicon.ico tomcat01:/usr/local/tomcat/webapps/ROOT/

文件同步

#语法
docker run -it -v 宿主机绝对路径目录:容器内目录 镜像名
​
#MySQL数据同步测试
docker search mysql
docker pull mysql:5.7
 #启动MySQL,并挂载数据
 -d 后台运行
 -p 端口映射
 -v卷挂载
 -e 环境配置
 --name 容器名字
docker run -d -p 3366:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=1234 --name mysql01 mysql:5.7

查看镜像元素:      docker inspect 容器id

Dockerfile

Dockerfile 指令说明
FROM指定基础镜像,用于后续的指令构建。
MAINTAINER指定Dockerfile的作者/维护者。(已弃用,推荐使用LABEL指令)
LABEL添加镜像的元数据,使用键值对的形式。
RUN在构建过程中在镜像中执行命令。
CMD指定容器创建时的默认命令。(可以被覆盖)
ENTRYPOINT设置容器创建时的主要命令。(不可被覆盖)
EXPOSE声明容器运行时监听的特定网络端口。
ENV在容器内部设置环境变量。
ADD将文件、目录或远程URL复制到镜像中。
COPY将文件或目录复制到镜像中。
VOLUME为容器创建挂载点或声明卷。
WORKDIR设置后续指令的工作目录。
USER指定后续指令的用户上下文。
ARG定义在构建过程中传递给构建器的变量,可使用 "docker build" 命令设置。
ONBUILD当该镜像被用作另一个构建过程的基础时,添加触发器。
STOPSIGNAL设置发送给容器以退出的系统调用信号。
HEALTHCHECK定义周期性检查容器健康状态的命令。
SHELL覆盖Docker中默认的shell,用于RUN、CMD和ENTRYPOINT指令。

使用dockerfile构建镜像

docker build -f dockerfile文件名称 -t 显示镜像明显:tag .

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值