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
从容器内复制文件到主机
docker cp 容器id:路径(opt/home)主机路径
docker cp 83772ce30bdf:opt /home
启动MySQL
docker run --name 显示容器名 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=数据库密码 -d mysql:5.7
停止某个镜像服务 docker stop 镜像名称or镜像ID
启动 docker start 镜像名称or镜像ID
强制停止 dokcer kill 镜像名称or镜像ID
查看 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指令。 |
docker build -f dockerfile文件名称 -t 显示镜像明显:tag .
评论记录:
回复评论: