栏目分类:
子分类:
返回
文库吧用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
文库吧 > IT > 软件开发 > 后端开发 > Java

Docker常规操作命令(常用)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Docker常规操作命令(常用)

Docker操作常用命令
  • 1、Docker操作常用命令
    • 1.1、镜像操作命令(下载、查看、删除)
    • 1.2、容器操作命令
    • 1.3、修改容器内部内容
      • 1.3.1、进容器内部修改
      • 1.3.2、挂载数据到外部修改
    • 1.4、发布镜像
    • 1.5、镜像打包,服务器之间传输
    • 1.6、将镜像推送到docker hub仓库
    • 1.7、查看容器的日志
    • 1.8、将容器内的nginx的首页、配置文件挂载到宿主机上
    • 1.9、容器和宿主机之间完成文件复制

1、Docker操作常用命令

1.1、镜像操作命令(下载、查看、删除)

去docker hub,找到nginx镜像。在Tags页面找不同版本的镜像

#1、下载最新版本镜像
docker pull nginx  
docker pull redis

# 2、下载指定版本的镜像

docker pull nginx:1.20.1  #镜像名:版本名(标签)
docker pull redis:6.2.4

#3、查看本地所有镜像(下载来的镜像都在本地)
docker images  

redis = redis:latest

# 4、删除镜像
docker rmi 镜像名:版本号
docker rmi 镜像id
  • 拉取镜像
  • 拉取指定版本镜像
  • 查看本地的镜像

  • 删除镜像
1.2、容器操作命令

特别命令(linux命令)

# 重启操作系统
reboot
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
【docker run  设置项   镜像名  】 镜像启动运行的命令(镜像里面默认有的,一般不会写)

# -d:后台运行
# --restart=always: 开机自启
# --name=mynginx :设置启动后容器的名
# 88是宿主机端口,80是容器端口
docker run --name=mynginx   -d  --restart=always -p  88:80   nginx 
	


# 2、查看正在运行的容器
docker ps

# 3、查看所有
docker ps -a

# 4、删除停止的容器
docker rm  容器id/名字
docker rm -f mynginx   #强制删除正在运行中的

# 5、停止容器
docker stop 容器id/名字

# 6、启动容器
docker start 容器id/名字

#7、如果启动容器时,未设置开机自启,则可用以下命令设置应用开机自启
docker update 容器id/名字 --restart=always

启动容器:

1.3、修改容器内部内容

例如:修改容器中nginx的index.html页面

1.3.1、进容器内部修改
# 进入启动的容器内部,修改容器内容  
# -it 以交互模式进入容器 
# /bin/bash  进入容器控制台
# 容器id  这里的容器id是已经启动的容器的id

docker exec -it 容器id  /bin/bash

# 进入容器中nginx的首页
cd /usr/share/nginx/html

修改nginx首页的内容
echo "

Welcome To China

" > index.html

访问容器中linux的首页

1.3.2、挂载数据到外部修改

意思是建容器内的文件与宿主机建立一种联系,在宿主机修改文件,可以影响到容器内部文件的数据

# -v /data/html:/usr/share/nginx/html:ro
# 挂载  宿主机文件存放路径:容器内要挂载的文件存放路径:容器内只能可读(rw:容器内可读写)

docker run --name=mynginx -d --restart=always -p  88:80 -v /data/html:/usr/share/nginx/html:ro nginx



# 修改页面只需要去宿主机的 /data/html文件夹下,使用以下命令给index.html写入内容“111”
echo 111 >index.html

#我们再去访问容器内的nginx的首页,浏览器就会输出111

1.4、发布镜像

将自己修改好的镜像提交(先存到本地仓库)

# 首先查看刚刚修改过的镜像的id(1.3中修改的镜像)
docker ps

# 提交修改过的镜像 -a:指明作者  -m:修改的内容
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]  
# 容器id 刚刚修改的id,例如下图的nginx
# mynginx:2.0 指定推送后的镜像的 镜像名:版本号为
docker commit -a "zhangsan"  -m "改变首页输出内容" 容器id mynginx:2.0

  • 查看本地的镜像,刚刚提交的镜像已存储到本地仓库
docker images

  • 启动新提交的镜像,并以交互命令进入启动后的容器
docker run --name=mynginx3   -d  --restart=always -p  90:80   mynginx:2.0

docker exec -it 29be6ff9a4f947a9cda043795daafbf8733357bd8f83ea03eefe6e384b4bc4c6 /bin/bash

在物理机访问刚刚启动的容器

1.5、镜像打包,服务器之间传输

将镜像打包,传输到别的服务器,在别的服务器docker中使用该镜像

# 1、将镜像保存成压缩包
docker save -o abc.tar nginx:v2.0

# 2、离线安装,通过u盘拷贝

# 别的机器加载这个镜像
docker load -i abc.tar
  • 将镜像打包
docker ps
docker save -o abc.tar nginx:v2.0

  • 查看打包后的镜像
ls

  • 将在服务器1(192.168.126.129)上打包的容器传输到服务器2(192.168.126.130):
# 第一个root指192.168.126.130的root账号,第二个root是值将abc.tar放到主机192.168.126.130的root目录下

scp abc.tar root@192.168.126.130:/root/

  • 在别的服务器上使用该镜像
docker load -i abc.tar
1.6、将镜像推送到docker hub仓库

推送镜像到docker hub;应用市场

# docker 官方命令
docker tag local-image:tagname new-repo:tagname
docker push new-repo:tagname

实际命令

#首先查看本地有的镜像
docker images

# 把旧镜像的名字(nginx2:v2.0),zhansan为你的docker hub登录名,改成要推到docker仓库的新版名字(nginx:v1.0)
docker tag mynginx:2.0  zhansan/nginx:v1.0

# 登录到docker hub,依次你的docker hub账号密码
docker login       


# 推送       docker hub登录名/仓库:镜像版本
docker push  zhangsan/nginx:v1.0

# 推送完成镜像后退出
docker logout


# 别的机器下载
docker pull zhangsan/nginx:v1.0

1.7、查看容器的日志
docker logs  容器id/容器名

1.8、将容器内的nginx的首页、配置文件挂载到宿主机上

命令中的nginx.conf提前在宿主机指定位置创建

# 下边命令是docker启动命令
# docker 经常修改nginx配置文件
docker run -d -p 80:80 
-v /data/html:/usr/share/nginx/html:ro 
-v /data/conf/nginx.conf:/etc/nginx/nginx.conf 
--name mynginx-02 
nginx
1.9、容器和宿主机之间完成文件复制
#把容器指定位置的东西复制出来 
docker cp 5eff66eec7e1:/etc/nginx/nginx.conf  /data/conf/nginx.conf

#把外面的内容复制到容器里面
docker cp  /data/conf/nginx.conf  5eff66eec7e1:/etc/nginx/nginx.conf
转载请注明:文章转载自 www.wk8.com.cn
本文地址:https://www.wk8.com.cn/it/1036899.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 wk8.com.cn

ICP备案号:晋ICP备2021003244-6号