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

相关文章

ubuntu如何部署Dify以及安装Docker? Dify安装部署指南

《ubuntu如何部署Dify以及安装Docker?Dify安装部署指南》Dify是一个开源的大模型应用开发平台,允许用户快速构建和部署基于大语言模型的应用,ubuntu如何部署Dify呢?详细请... Dify是个不错的开源LLM应用开发平台,提供从 Agent 构建到 AI workflow 编排、RA

Docker安装MySQL镜像的详细步骤(适合新手小白)

《Docker安装MySQL镜像的详细步骤(适合新手小白)》本文详细介绍了如何在Ubuntu环境下使用Docker安装MySQL5.7版本,包括从官网拉取镜像、配置MySQL容器、设置权限及内网部署,... 目录前言安装1.访问docker镜像仓库官网2.找到对应的版本,复制右侧的命令即可3.查看镜像4.启

debian12安装docker的实现步骤

《debian12安装docker的实现步骤》本文主要介绍了debian12安装docker的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着... 目录步骤 1:更新你的系统步骤 2:安装依赖项步骤 3:添加 docker 的官方 GPG 密钥步骤

Windows Docker端口占用错误及解决方案总结

《WindowsDocker端口占用错误及解决方案总结》在Windows环境下使用Docker容器时,端口占用错误是开发和运维中常见且棘手的问题,本文将深入剖析该问题的成因,介绍如何通过查看端口分配... 目录引言Windows docker 端口占用错误及解决方案汇总端口冲突形成原因解析诊断当前端口情况解

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(或 --