docker-基本操作命令,生成docker镜像包

一、帮助启动类命令。

1、启动,命令:systemctl start docker

2、停止,命令:systemctl stop docker

3、重启,命令:systemctl restart docker

4、查看docker状态,命令:systemctl status docker

5、开机启动,命令:systemctl enable docker

6、查看docker概要信息,命令:docker info

7、查看docker整体帮助文档,命令:docker --help

8、查看docker命令帮助文档,命令:docker 具体命令 --help

二、镜像命令。

1、列出本地主机上的镜像,展示的是一个列表,表头含义如下:

repository:表示镜像的仓库源

tag:镜像的标签

images ID:镜像ID

created:镜像创建时间

size:镜像大小

命令:docker images

-a:列出本地所有镜像(包括历史镜像)

-q:只显示镜像ID

2、某个×××镜像名字,展示的是一个列表,表头含义如下:

name:镜像名称

description:镜像说明

stars:点赞数量

official:是否是官方的

automated:是否是自动构建的

命令:docker search

3、下载镜像,命令:docker pull 某个×××镜像名字,有两种命令:

a.docker pull 镜像名字:TAG

b.docker pull 镜像名字 没有tag就是最新版

4、查看镜像/容器/数据卷所占的空间,命令:docker system df

5、删除某个×××镜像名字ID(这里就不展示删除了),命令:docker rmi

删除单个,命令:docker rmi -f 镜像ID

删除多个,命令:docker rmi -f 镜像名1:TAG镜像名2:TAG

删除全部,命令:docker rmi -f $(docker images -qa)

三、容器命令。

1、新建+启动容器,命令:docker options image command ARG......

启动交互式容器(前端服务器)

--name="容器新名字"

-d:后台运行容器

启动交互式,命令:docker run -it

-i:以交互模式运行容器 interactive

-t:为容器重新分配一个为输入终端 tyy

前台有伪终端,等待交互,命令:docker run -it Ubuntu bash/bin

P:随机终端口映射,大写P

p:指定终端口映射,小写p,常用此写法。

2、列出当前所运行的容器,命令:docker -ps options

常用命令:

docker -ps -a:列出当前所有正在运行的容器+历史上运行过的

docker -ps -l:显示最近创建的容器

docker -ps -q:静默模式,只显示容器ID

3、退出容器,有两种退出命令(这里不做展示)。

a.exit:run进去容器,exit推出,容器停止。

b.ctrl+p+q:run进去容器,ctrl+p+q退出,容器不停止。

4、启动已经停止的容器,命令:docker start 容器ID或容器名

5、重启容器,命令:docker restart 容器ID或容器名

6、停止容器,命令:docker stop 容器ID或容器名

7、强制停止容器,命令:docker kill 容器ID或容器名

8、删除已停止的容器,命令如下:

docker rm +容器ID,先停下来再删除

docker rm -f 容器ID/容器名 强制删除

一次性删除多个容器实例:docker rm -f $(docker ps -a -q)

docker ps -a -q | xargs docker rm

9、启动守护式容器(后台服务器),命令:docker run -d 容器名

docker run -it redis:6.0.8 前台交互式启动

启动镜像,命令:docker run -it 容器id /bin/bash

docker run -d redis:6.0.8 后台守护式启动

10、查看容器日志,命令:docker logs 容器ID

11、查看容器内运行的进程,命令:docker top 容器ID

12、查看容器内部进程,命令:docker inspect 容器ID

13、进入正在运行的容器并进行命令交互,命令:docker exec -it 容器ID bashshell

重新进入,命令:docker attach 容器ID

attach:直接进入容器启动命令的终端,不会启动新的进程,用exit退出,会导致容器停止。

exec:是在容器中打开新的终端,不会启动新的进程,用exit退出,不会导致容器终止,一般推荐使用这一种。

14、从文件拷贝内容到主机上,命令:docker cp 容器ID:容器内路径,目的主机路径

15、导出和导入容器。

export:导出容器的内容留作为一个tar归档文件(对应import命令)。

import:从tar包中的内容创建一个新的文件系统再导入为镜像(对应export命令)。

案例:

docker export 容器ID > 文件名.tar

cat 文件名.tar | docker import -镜像用户/镜像名:镜像版本号

四、外网联通的情况下安装vim命令,docker容器内执行以下两条命令。

1、apt-get update

2、apt-get -y install vim

四、生成docker镜像包

第一步,基于pull的基本镜像环境,创建dockerfile

基础镜像java

FROM openjdk:8u265

作者是

MAINTAINER cookie

就是你上传的jar包的名称。给jar包起个别名

ADD user-1.0.0.jar /app/user.jar

就是在容器中以多少端口号运行

EXPOSE 7001

容器启动之后执行的命令,java -jar spring_boot.jar 即启动jar

ENTRYPOINT "java","-Dspring.profiles.active=test","-jar","-Xmx512m","-Xms512m","-Xmn200m","/app/user.jar"

第二步,启动镜像,进行测试

docker run -d --restart=always --name xxxx -p 7001:7001 -v 服务器目录:容器目录 user:V1.0

例:

docker run -d --restart=always --name user -p 7001:7001 -v /test/user/log:/app/log user:V1.0

进入docker容器命令

docker exec -it xxxx /bin/bash

例:

docker exec -it user /bin/bash

第三步,打包镜像,保存到服务器

注意build后面的空格和点

save docker的ID到默认路径下

docker build -t xxxx:tag .

docker save xxxxx > xxxx.tar

相关推荐
Java小白笔记30 分钟前
Docker 安装配置完全指南:MacOS 、Windows、Linux环境下的安装、配置与验证
linux·macos·docker
csdn_aspnet1 小时前
GitHub Actions自动化运维实战,用CI/CD流水线实现测试、部署、安全扫描一体化
运维·安全·ci/cd·自动化·github
Inhand陈工2 小时前
数据中心UPS无功补偿与智能化监控方案:基于IG502的Modbus RTU转IEC61850实战
运维·人工智能·物联网·信息与通信
qetfw2 小时前
CentOS 7 搭建 LDAP 目录服务
linux·运维·centos
IT方大同4 小时前
linux简介
linux·运维·服务器
Dear~yxy4 小时前
时间同步服务器搭建
运维·服务器
Gem_S_6084 小时前
产品任务流转工具实践:构建需求到交付的全流程协作体系
运维
项目管理与代码4 小时前
基于Webhook+消息队列的自动化项目进度跟踪方案设计
运维·自动化
wbs_scy5 小时前
仿 muduo 高并发服务器项目:实现 LoopThread 与 LoopThreadPool 多线程事件循环
运维·服务器
微道道5 小时前
Linux盒子局域网内使用 .local 域名访问,告别IP变化烦恼
linux·运维·服务器·hermes