docker具体操作

2024-08-22 23:44
文章标签 docker 具体操作

本文主要是介绍docker具体操作,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

安装docker : 

前提  centos 7  64位  centos内核版本3.10以上

 1    uname -r  查看内核

30e4e36e777145988df6026f79a74d9f.png

   2  yum install -y   yum-utils  device-mapper-persistent-data   lvm2  下载依赖包

 3 um-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo设置docker yum源 

4  yum list docker-ce --showduplicates | sort -r   查看仓库中所有docker版本:

5安装docker        yum install -y docker-ce

6 查看docker状态    service docker status

7 启动docker       service docker start

测试源是否能用    

 1  docker run hello-world     运行cker run hello-world 是一个常用的命令,用于测试 Docker 是否正确安装在你的系统上。这个命令会运行一个名为 hello-world 的 Docker 镜像,该镜像是一个特殊的镜像,用于演示 Docker 的基本功能(

当你执行 docker run hello-world 命令时,Docker 会执行以下步骤:

查找镜像:Docker 首先会在本地查找名为 hello-world 的镜像。如果本地没有该镜像,Docker 会尝试从 Docker Hub(Docker 的官方镜像仓库)下载它。

下载镜像(如果本地没有):如果本地没有 hello-world 镜像,Docker 会从 Docker Hub 下载它。这个镜像非常小,下载速度通常很快。

创建容器:下载完成后,Docker 会使用 hello-world 镜像来创建一个新的容器。

运行容器:容器创建后,Docker 会运行容器中的程序。对于 hello-world 镜像,它会打印一条欢迎信息,并显示 Docker 的一些基本用法和文档链接。

退出容器hello-world 镜像中的程序执行完毕后,容器会自动退出。

)发现不能用,因为他默认源在国外,抠搜的不让用

2  vim  /etc/docker/daemon.json

{"registry-mirrors": ["https://docker.fxxk.dedyn.io","https://docker.registry.cyou","https://docker-cf.registry.cyou","https://docker.jsdelivr.fyi","https://dockercf.jsdelivr.fyi"]
}

这是新找的能用的,但也可能明天就用不了,你可以去这里找

GitHub - cmliu/CF-Workers-docker.io: 这个项目是一个基于 Cloudflare Workers 的 Docker 镜像代理工具。它能够中转对 Docker 官方镜像仓库的请求,解决一些访问限制和加速访问的问题。GitHub - cmliu/CF-Workers-docker.io: 这个项目是一个基于 Cloudflare Workers 的 Docker 镜像代理工具。它能够中转对 Docker 官方镜像仓库的请求,解决一些访问限制和加速访问的问题。

ea4dc5b57e7f464db1f1a486b3063006.pngGitHub - cmliu/CF-Workers-docker.io: 这个项目是一个基于 Cloudflare Workers 的 Docker 镜像代理工具。它能够中转对 Docker 官方镜像仓库的请求,解决一些访问限制和加速访问的问题。

上边这些https开头的直接加到上面配置文件中括号里,注意加双引号,和用逗号隔开

 重启     service docker restart

再次运行  docker run hello-world

常用命令

查看版本:docker  version

查看详情: docker info

docker帮助:    docker --help

查看docker大小: du -sh   docker

刚拉的镜像都在这里      cat  /var/lib/docker/image/overlay2/repositories.json

列出本地镜像     docker  images      可以看到刚才拉的hello-world镜像

 显示完整的镜像信息   docker images --no-trunc

:列出本地的所有镜像(包括不完整/损坏的镜像)   docker images -a

只显示镜像的id           docker images -q

列出本地的所有镜像(包括不完整/损坏的镜id   docker images -qa

显示镜像的摘要信息     docker images  --digests

搜索与tomcat相关的镜像       docker search  tomcat

 只显示前三行             docker search  tomcat  --limit 3

拉取镜像        docker pull  tomcat:9.0.80       这个tomcat没有index.jps页面 所以会404

拉完再次查看镜像       docker images

再次查看docker大小: du -sh   docker    发现比刚才大得多

再次查看拉的镜像  cat  /var/lib/docker/image/overlay2/repositories.json

355ca40acb6141fabe5d98661f5551a6.png

删除镜像       docker rmi     镜像:版本号

                      docker rmi  hello-world:latest

01049f848677478095e028d807ac3472.png

 镜像被使用过,就存在容器,有容器在用它,删不了

docker ps -a   查看使用过和正在使用的镜像   可以看到已经用过hello-world 

非要删除这个镜像要么先把容器删了要么加 -f 强制删除   docker rmi  -f   hello-world:latest

再次查看镜像    docker images   没有hello-world了

(docker run hello-world拉取并运行, docker pull hello-world只拉取不运行)

建议删除镜像直接用强制删除  就像这个hello-world ,用过了,强制删除后,再拉取不运行,也会常出现在容器里,想删除还得  -f  强制删除

删除 后面也可以跟id   docker rmi  -f   d2c94e258dcb   id在官网都是唯一的

批量删除   docker rmi -f $(docker images -q)    

全批量删除   docker rmi -f $(docker images -qa) 

容器命令

                                                   tomcat  id唯一

docker run --name tomcat91  -d ce95ab0490a9      从镜像启动一个新的容器

docker run --name tomcat92  -d ce95ab0490a9

docker run --name tomcat93  -d ce95ab0490a9

docker ps   正在运行的

b977b86fdb2244c5b9d7cc058c078176.png

docker stop tomcat91        停掉tomcat91

98ebcf12fdb94e78bdd36adb294cc22a.png

d5b6f6406be4418fb8e3ea6752e4adf3.png

 docker start tomcat91  启动

 

-l:显示最近所创建过的一个容器    

-n:显示最近所创建过的n个容器    docker ps -n 5     显示最近所创建过的5个容器

你想进容器看看小世界吗    想!!!!!1

docker exec  -it  tomcat91 /bin/bash     

./bin/shutdown.sh   关闭tomcat

918cafed5ce94d78b5b43368f1509ae5.png

exit   退出

docker  logs tomcat91   看日志

端口映射

  弄三个tomcat 在docker   并显示页面  

docker volume create tomcat91

docker volume create tomcat92

docker volume create tomcat93

docker run --name tomcat91 -d -p 18081:8080 -v tomcat93:/usr/local/tomcat/webapps tomcat:9.0.80

docker run --name tomcat92 -d -p 18082:8080 -v tomcat93:/usr/local/tomcat/webapps tomcat:9.0.80

docker run --name tomcat93 -d -p 18083:8080 -v tomcat93:/usr/local/tomcat/webapps tomcat:9.0.80

docker ps  看一下是不是全启动了

mkdir /var/lib/docker/volumes/tomcat91/_data/ROOT 

mkdir /var/lib/docker/volumes/tomcat92/_data/ROOT 

mkdir /var/lib/docker/volumes/tomcat93/_data/ROOT 

 vim   /var/lib/docker/volumes/tomcat91/_data/ROOT/index.jsp 

<html>
<head>
<title>index</title>
</head>
<body>
<h3> welcome  to  qy3333333333333    <h3>
</body></html>

   cp          /var/lib/docker/volumes/tomcar91/_data/ROOT/index.jsp /var/lib/docker/volumes/tomcat92/_data/ROOT/

   cp          /var/lib/docker/volumes/tomcar91/_data/ROOT/index.jsp /var/lib/docker/volumes/tomcat93/_data/ROOT/

 

把index.jsp里面<h3><h3>改成能辨识tomcat91 92 93 的

在浏览器里

192.168.58.71:18081

192.168.58.71:18082

192.168.58.71:18083

能看到你在<h3><h3>里的辨识tomcat91 92 93

 

 

 

 

 

 

 

这篇关于docker具体操作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1097736

相关文章

Docker镜像修改hosts及dockerfile修改hosts文件的实现方式

《Docker镜像修改hosts及dockerfile修改hosts文件的实现方式》:本文主要介绍Docker镜像修改hosts及dockerfile修改hosts文件的实现方式,具有很好的参考价... 目录docker镜像修改hosts及dockerfile修改hosts文件准备 dockerfile 文

Docker镜像pull失败两种解决办法小结

《Docker镜像pull失败两种解决办法小结》有时候我们在拉取Docker镜像的过程中会遇到一些问题,:本文主要介绍Docker镜像pull失败两种解决办法的相关资料,文中通过代码介绍的非常详细... 目录docker 镜像 pull 失败解决办法1DrQwWCocker 镜像 pull 失败解决方法2总

通过Docker Compose部署MySQL的详细教程

《通过DockerCompose部署MySQL的详细教程》DockerCompose作为Docker官方的容器编排工具,为MySQL数据库部署带来了显著优势,下面小编就来为大家详细介绍一... 目录一、docker Compose 部署 mysql 的优势二、环境准备与基础配置2.1 项目目录结构2.2 基

关于Docker Desktop的WSL报错问题解决办法

《关于DockerDesktop的WSL报错问题解决办法》:本文主要介绍关于DockerDesktop的WSL报错问题解决办法的相关资料,排查发现是因清理%temp%文件夹误删关键WSL文件,... 目录发现问题排查过程:解决方法其实很简单:重装之后再看就能够查到了:最后分享几个排查这类问题的小www.cp

如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件

《如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件》本文介绍了如何使用Docker部署FTP服务器和Nginx,并通过HTTP访问FTP中的文件,通过将FTP数据目录挂载到N... 目录docker部署FTP和Nginx并通过HTTP访问FTP里的文件1. 部署 FTP 服务器 (

解读docker运行时-itd参数是什么意思

《解读docker运行时-itd参数是什么意思》在Docker中,-itd参数组合用于在后台运行一个交互式容器,同时保持标准输入和分配伪终端,这种方式适合需要在后台运行容器并保持交互能力的场景... 目录docker运行时-itd参数是什么意思1. -i(或 --interactive)2. -t(或 --

Docker部署Jenkins持续集成(CI)工具的实现

《Docker部署Jenkins持续集成(CI)工具的实现》Jenkins是一个流行的开源自动化工具,广泛应用于持续集成(CI)和持续交付(CD)的环境中,本文介绍了使用Docker部署Jenkins... 目录前言一、准备工作二、设置变量和目录结构三、配置 docker 权限和网络四、启动 Jenkins

ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法

《ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法》本文介绍了Elasticsearch的基本概念,包括文档和字段、索引和映射,还详细描述了如何通过Docker... 目录1、ElasticSearch概念2、ElasticSearch、Kibana和IK分词器部署

docker如何删除悬空镜像

《docker如何删除悬空镜像》文章介绍了如何使用Docker命令删除悬空镜像,以提高服务器空间利用率,通过使用dockerimage命令结合filter和awk工具,可以过滤出没有Tag的镜像,并将... 目录docChina编程ker删除悬空镜像前言悬空镜像docker官方提供的方式自定义方式总结docker

更改docker默认数据目录的方法步骤

《更改docker默认数据目录的方法步骤》本文主要介绍了更改docker默认数据目录的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1.查看docker是否存在并停止该服务2.挂载镜像并安装rsync便于备份3.取消挂载备份和迁