2024年Docker常用操作快速查询手册

目录

一、Linux系统上 Docker安装流程(以ubuntu为例)

一、卸载所有冲突的软件包

二、设置Docker的apt存储库(这里使用的是阿里云软件源)

三、直接安装最新版本的Docker

三、安装指定版本的Docker

四、验证Docker是否安装成功

二、Docker命令解释

三、Docker常用命令

一、启动docker

二、关闭docker

三、重启docker

四、跟随系统自动启动

五、查询docker运行状态

六、下载镜像命令(下载,但是不运行)

七、创建镜像容器并运行(后面可以携带常用参数如 -d -p)

八、进入镜像容器内部

九、退出容器内部(运行时候未加-d容器会被关闭)

十、启动容器

十一、停止容器

十二、重启容器

十三、查看宿主机内全部镜像

十四、删除镜像(被删除的镜像不能在任何容器内运行)

十五、强制删除镜像

十六、保存镜像

十七、从压缩包中加载镜像

十八、查看正在运行的容器

十九、查看所有的容器

四、数据卷挂载和本地挂载

一、数据卷挂载(必须在创建容器的时候进行挂载)

二、本地挂载(必须在创建容器的时候进行挂载)

五、构建java项目镜像

六、docker自定义网络

1、创建自定义网络

2、将容器加入该网络

作者介绍

尾言


一、Linux系统上 Docker安装流程(以ubuntu为例)

其它操作系统,请前往docker官网查看

Install Docker Engine on Ubuntu | Docker Docs

一、卸载所有冲突的软件包

for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done

二、设置Docker的apt存储库(这里使用的是阿里云软件源)

# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL http://mirrors.aliyun.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
# 设置为阿里云的软件源
sudo chmod a+r /etc/apt/keyrings/docker.asc# Add the repository to Apt sources:
echo \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

三、直接安装最新版本的Docker

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

三、安装指定版本的Docker

1、先查询可用版本

apt-cache madison docker-ce | awk '{ print $3 }'

2、选择指定的Docker版本进行安装

VERSION_STRING=5:26.1.0-1~ubuntu.24.04~noble
sudo apt-get install docker-ce=$VERSION_STRING docker-ce-cli=$VERSION_STRING containerd.io docker-buildx-plugin docker-compose-plugin

四、验证Docker是否安装成功

sudo docker run hello-world

二、Docker命令解释

docker run -d \--name mysql \-p 3307:3306 \-e TZ=Asia/Shanghai \-e MYSQL_ROOT_PASSWORD=123456 \mysql:8.0

docker run

这行命令的意思是创建并运行一个容器

-d

这个参数的意思是,让容器在后台运行

-p [宿主机端口]:[容器内要需要被映射的端口]

所以-p 3307:3306的意思就是将宿主机的3307端口映射到mysql容器内的3306端口,这样就可以通过从外部访问宿主机的3307端口从而间接访问容器内的3306端口

-e 这个是配置环境变量参数,具体要配置什么,得看该容器在Docker hub中的具体说明

mysql:8.0

mysql是镜像名,就是你要从仓库下载的镜像,8.0是该镜像的版本。如果省略:8.0则默认安装最新版本

三、Docker常用命令

一、启动docker

systemctl start docker

二、关闭docker

systemctl stop docker

三、重启docker

systemctl restart docker

四、跟随系统自动启动

systemctl enable docker

五、查询docker运行状态

systemctl status docker

六、下载镜像命令(下载,但是不运行)

docker pull 镜像名:版本号

七、创建镜像容器并运行(后面可以携带常用参数如 -d -p)

docker run 镜像名

八、进入镜像容器内部

docker exec -it 镜像容器名 bash

九、退出容器内部(运行时候未加-d容器会被关闭)

exit

十、启动容器

docker start 容器名

十一、停止容器

docker stop 容器名

十二、重启容器

docker restart 容器名

十三、查看宿主机内全部镜像

docker images

十四、删除镜像(被删除的镜像不能在任何容器内运行)

docker rmi -f 镜像名

十五、强制删除镜像

docker image rm 镜像名

十六、保存镜像

docker save 镜像名 -o 保存路径
#例如 docker save mysql -o /root/mysql.tar

十七、从压缩包中加载镜像

docker load -i 镜像压缩包路径

十八、查看正在运行的容器

docker ps

十九、查看所有的容器

docker ps -a

四、数据卷挂载和本地挂载

一、数据卷挂载(必须在创建容器的时候进行挂载)

docker run -v 数据卷名字:容器内要被挂载的目录
# 例如 docker run -v conf:/usr/share/nginx/html

然后容器内的html目录就会被挂载在宿主机的/var/lib/docker/volumes/conf/_data

二、本地挂载(必须在创建容器的时候进行挂载)

docker run -v 本地绝对路径目录:容器内需要被挂载的路径
# 必须是绝对路径不能是相对路径,否则会认为是数据卷挂载

五、构建java项目镜像

1、新建一个名字未dockerfile的文件,没有文件格式后缀

2、编写dockerfile文件里的配置

FROM openjdk:11.0-jre-buster
#JDK基础镜像需要提前下载
COPY java-demo.jar /app.jar
#只用将java-demo.jar这个jar包的路径改为你自己的
ENTRYPOINT["java","-jar","/app.jar"]
#入口

3、执行构建指令

docker build -t 你起的镜像名:版本号 dockerfile文件所在目录

六、docker自定义网络

1、创建自定义网络

cocker network create 自定义网络名

2、将容器加入该网络

docker network connect 自定义网络名 容器名

然后就可以通过自定义网络名去替代容器的IP地址,并且在同一个网络的容器们都可以互相访问。

 作者介绍

作者本人是一名人工智能炼丹师,目前在实验室主要研究的方向为生成式模型,对其它方向也略有了解,希望能够在CSDN这个平台上与同样爱好人工智能的小伙伴交流分享,一起进步。谢谢大家鸭~~~

 如果你觉得这篇文章对您有帮助,麻烦点赞、收藏或者评论一下,这是对作者工作的肯定和鼓励。  

尾言

 如果您觉得这篇文章对您有帮忙,请点赞、收藏。您的点赞是对作者工作的肯定和鼓励,这对作者来说真的非常重要。如果您对文章内容有任何疑惑和建议,欢迎在评论区里面进行评论,我将第一时间进行回复。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/316974.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ES集群分布式查询原理

集群分布式查询 elasticsearch的查询分成两个阶段: scatter phase:分散阶段,coordinating node会把请求分发到每一个分片gather phase:聚集阶段,coordinating node汇总data node的搜索结果,并处理为最终结…

Esp8266 - USB开关分享(开源)

文章目录 简介推广自己gitee项目地址:嘉立创项目地址:联系我们 功能演示视频原理图嘉立创PCB开源地址原理图PCB预览 固件烧录代码编译烧录1. 软件和驱动安装2. 代码编译1. 安装所需要的依赖库文件2. 下载源代码3. 烧录代码 使用说明1. 设备配网2. 打开设备操作页面3…

第十四届蓝桥杯国赛:2023次方的思考(指数塔,数论)

首先我们要知道,正常计算的话,指数优先级最高,因此得先计算指数,比如: 2 3 2 512 2^{3^2}512 232512 欧拉定理的关键在于,它允许我们通过减少计算的指数大小来简化模运算。 经过仔细研究(看题…

品牌百度百科词条需要什么资料?

品牌百度百科词条是一个品牌的数字化名片,更是品牌历史、文化、实力的全面展现。 作为一个相当拿得出手的镀金名片,品牌百度百科词条创建需要什么资料,今天伯乐网络传媒就来给大家讲解一下。 一、品牌基本信息:品牌身份的明确 品…

kotlinDSL控制的安卓项目导入已存在的模块后sync报错

原因很明显,但是我还找了好久 因为在import时并没有选择groove还是kotlin控制, 所以默认为groovy控制的,然而主项目是由kotlin dsl控制的grale行为。 原因清楚之后,就可以去检查一下,项目里是否包含了settings.gradle和…

掌握JavaScript面向对象编程核心密码:深入解析JavaScript面向对象机制对象基础、原型模式与继承策略全面指南,高效创建高质量、可维护代码

ECMAScript(简称ES,是JavaScript的标准规范)支持面向对象编程,通过构造函数模拟类,原型链实现继承,以及ES6引入的class语法糖简化面向对象开发。对象可通过构造函数创建,使用原型链共享方法和属…

vue+elementUI实现点击左右箭头切换按钮功能

原本是可以用el-tabs做的,就像下面的样式,但是领导说不行 最后用button和element里面的el-carousel(走马灯)结合了一下 长这样 感觉还不错 可以自己改样式 代码如下: <div class"drawer-carousel"><el-carousel arrow"always" :loop"false…

基于SSM的文物管理系统(含源码+sql+视频导入教程+文档+PPT)

&#x1f449;文末查看项目功能视频演示获取源码sql脚本视频导入教程视频 1 、功能描述 基于SSM的文物管理系统拥有俩种角色 管理员&#xff1a;个人信息管理、用户管理、分类管理、文物信息管理、文物外借管理、文物维修管理、留言板管理等 用户&#xff1a;登录注册、分类…

Hybrid Homomorphic Encryption:SE + HE

参考文献&#xff1a; [NLV11] Naehrig M, Lauter K, Vaikuntanathan V. Can homomorphic encryption be practical?[C]//Proceedings of the 3rd ACM workshop on Cloud computing security workshop. 2011: 113-124.[MJS16] Maux P, Journault A, Standaert F X, et al. To…

LLaMA3(Meta)微调SFT实战Meta-Llama-3-8B-Instruct

LlaMA3-SFT LlaMA3-SFT, Meta-Llama-3-8B/Meta-Llama-3-8B-Instruct微调(transformers)/LORA(peft)/推理 项目地址 https://github.com/yongzhuo/LLaMA3-SFT默认数据类型为bfloat6 备注 1. 非常重要: weights要用bfloat16/fp32/tf32(第二版大模型基本共识), 不要用fp16, f…

【目标检测】YOLOv7 网络结构(与 YOLOv4,YOLOv5 对比)

YOLOv7 和 YOLOv4 Neck 与 Head 结构对比 其实 YOLOv7 的网络结构网上很多文章已经讲得很清除了&#xff0c;网络结构图也有非常多的版本可供选择&#xff0c;因为 YOLOv7 和 YOLOv4 是一个团队的作品&#xff0c;所以在网络结构方面&#xff0c; YOLOv7 和 YOLOv4 有很多相似…

和鲸科技出席第五届空间数据智能学术会议,执行总裁殷自强受邀发表主题报告

4月26日&#xff0c;由 ACM SIGSPATIAL 中国分会、ACM SIGMOD 中国分会主办的第五届空间数据智能学术会议&#xff08;SpatialDI 2024&#xff0c;下简称“会议”&#xff09;在南京盛大开幕。本次会议特邀李清泉院士、周成虎院士、丛高教授、谢炯博士、张雪英教授等国内外知名…

【web安全】-- 命令执行漏洞详解

本文将从原理开始介绍命令执行漏洞并附有三个实例来供各位客官学习 文章目录 一、什么是命令执行漏洞二、出现的原因三、有可能存在命令执行漏洞的函数&#xff08;php&#xff09;1、利用一些函数来实现命令执行2、直接执行系统命令的函数 四、命令拼接符号1、Windows2、linux…

【06016传感器原理与应用】第4章 磁敏传感器 期末复习自考复习

第4章 磁敏传感器 通常把能讲磁学量信号转换成电信号的器材或装置称为磁敏传感器 一、学习目的与要求 通过本章的学习&#xff0c;熟悉并掌握磁敏传感器的工作原理和硬件组成结构。重点掌握半导体的霍尔器件和霍尔集成电路、磁敏二极管、三极管等的工作机理及其应用电路&…

【分享】如何将word格式文档转化为PDF格式

在日常的办公和学习中&#xff0c;我们经常需要将Word文档转换为PDF格式。PDF作为一种通用的文件格式&#xff0c;具有跨平台、易读性高等优点&#xff0c;因此在许多场合下都更为适用。那么&#xff0c;如何实现Word转PDF呢&#xff1f;本文将介绍几种常用的方法&#xff0c;帮…

border-image-slice详细说明

上一篇文章我们介绍了 border-image的用法&#xff0c;其中border-image-source、border-image-width、 border-image-outset都比较简单好理解&#xff0c;这边文章我们重点学一下border-image-slice 属性&#xff0c;它用于定义边框图像如何被切割并应用到元素的边框上。这个属…

vue3 安装-使用之第一篇

首先需要node版本高于V16.14.1 安装 执行 npm create vitelatest 具体选择按照自己实际需要的来 Project name:项目名称 Select a framework:选择用哪种框架 &#xff08;我选择vue&#xff09; Select a variant: 选择用JS还是TS&#xff08;我选择JS&#xff09;找到项目&…

架设WebSocket的最后一环,如何设置好nginx反向代理

WebScoket都已经完工快一个月&#xff0c;经过一段时间的测试&#xff0c;公司还是准备把服务器换到鹅厂&#xff0c;用EO来解决CDN内容分发和DDOS防护问题&#xff0c;由于EO并不支持URL 路径转发&#xff0c;只支持转发到一个站点的80或则443端口&#xff0c;如果想做路径分发…

前端框架技术调研

目前程序员使用前端框架最多的是哪一个&#xff1f;

BiLSTM-KDE的双向长短期记忆神经网络结合核密度估计多变量回归区间预测(Matlab)

BiLSTM-KDE的双向长短期记忆神经网络结合核密度估计多变量回归区间预测&#xff08;Matlab&#xff09; 目录 BiLSTM-KDE的双向长短期记忆神经网络结合核密度估计多变量回归区间预测&#xff08;Matlab&#xff09;效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.BiLS…