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.mzph.cn/bicheng/5451.shtml

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

相关文章

Linux 手动部署JDK21 环境

1、下载包(我下载的是tar) https://www.oracle.com/cn/java/technologies/downloads/#java21 完成后进行上传 2、检查已有JDK,并删除(我原有是jdk8) rpm -qa | grep -i java | xargs -n1 rpm -e --nodeps3、清理掉 profile中的j…

构建安全通信桥梁:PKI与数字证书

目录 前言 1. 密钥管理 2. 数字证书 3. PKI 4. 证书透明性 5. 实际案例 结论 前言 在数字化时代,信息和数据的传输变得日益频繁和普遍。无论是个人用户还是企业组织,都面临着保护通信和数据安全的重要挑战。而在这个保护的过程中,PKI&…

Mybatis-Plus扩展接口InnerInterceptor

InnerInterceptor 接口就是 MyBatis-Plus 提供的一个拦截器接口,用于实现一些常用的 SQL 处理逻辑,处理 MyBatis-Plus 的特定功能,例如PaginationInnerInterceptor、OptimisticLockerInnerInterceptor 等,都实现了 InnerInterceptor 接口,并添…

LINUX基础培训三十一之实操题模拟测试试卷

一、前言 针对前面章节介绍的基础知识内容,为方便实操锻炼和了解学习的掌握程度,模拟设置了这条基础操作题,在实战过程中曾给部分童鞋实操测试过。本章只给出具体题目内容,实际做题还需要搭建部署对应实操模拟环境以及设置自动评分功能,此处略过没写了,因为环境和评分都跟…

Vue项目打包APK----Vue发布App

时隔多年我又来跟新了,今天给大普家及下前端Vue傻瓜式发布App,话不多说直接上干货。 首先准备开发工具HBuilder X,去官网直接下载即可,算了直接给你们上地址吧HBuilderX-高效极客技巧。 打开软件,文件-->新建--&g…

【XR806开发板试用】基于XR806实现智能小车

一、实验功能: 1、 基于XR806实现WIFI连接路由器 2、 XR806设备创建TCP socket服务器,局域网内通过PC端TCP客服端连接XR806 TCP服务器进行指令控制小车运行(指令A:前进、B:后退、C&…

实验15 MVC

二、实验项目内容&#xff08;实验题目&#xff09; 编写代码&#xff0c;掌握MVC的用法。 三、源代码以及执行结果截图&#xff1a; inputMenu.jsp&#xff1a; <% page contentType"text/html" %> <% page pageEncoding "utf-8" %> &…

Element-UI 快速入门

Element-UI 快速入门 引言 在现代Web开发中&#xff0c;前端界面的构建对用户体验至关重要。Element-UI是一个基于Vue.js的组件库&#xff0c;它提供了丰富的界面组件&#xff0c;帮助开发者快速构建出美观且功能全面的网页应用。本文将作为你的快速入门指南&#xff0c;带你…

nvm pnpm powershell

nvm 下载 在 nvm 安装路径下修改 settings.txt root: e:\xxx\nvm path: e:\xxx\nodejs npm_mirror https://npmmirror.com/mirrors/npm/ node_mirror https://npmmirror.com/mirrors/node/nvm list available nvm install 18.20.2 nvm use 18.20.2npm config list npm config …

pta题库答案c语言

PTA&#xff08;Programming Teaching and Assignment&#xff0c;程序设计与教学&#xff09;平台提供了大量的C语言练习题和题目&#xff0c;这些题目覆盖了C语言的各个知识点&#xff0c;包括基础语法、函数、数组、指针、结构体、文件操作等。对于想要提高C语言编程能力的学…

Nginx配置Https缺少SSL模块

1、Linux下Nginx配置https nginx下载和安装此处就忽略&#xff0c;可自行百度 1.1、配置https 打开nginx配置文件 vim /opt/app/nginx/conf/nginx.conf相关https配置 server {listen 443 ssl; #开放端口server_name echarts.net;#域名#redirect to https#ssl on; #旧版#ssl证…

C语言-嵌入式-STM32:FreeRTOS说明和详解

Free即免费的&#xff0c;RTOS的全称是Real time operating system&#xff0c;中文就是实时操作系统。 注意&#xff1a;RTOS不是指某一个确定的系统&#xff0c;而是指一类操作系统。比如&#xff1a;uc/OS&#xff0c;FreeRTOS&#xff0c;RTX&#xff0c;RT-Thread 等这些都…

linux装R

2020-021 Anaconda装R - 知乎 因为要装rpy2 发现是服务器端 自己的虚拟环境没有装R&#xff0c;具体安装过程 参考上面那个链接 最后还要配一下R的环境

应用监控(Prometheus + Grafana)

可用于应用监控的系统有很多&#xff0c;有的需要埋点(切面)、有的需要配置Agent(字节码增强)。现在使用另外一个监控系统 —— Grafana。 Grafana 监控面板 这套监控主要用到了 SpringBoot Actuator Prometheus Grafana 三个模块组合的起来使用的监控。非常轻量好扩展使用。…

pnpm:基础使用及详解

pnpm 是一个快速、高效的包管理器&#xff0c;用于安装、管理和构建 JavaScript 项目的依赖项。它的设计理念是减少重复的模块安装&#xff0c;节省磁盘空间&#xff0c;并提供更快的安装和运行速度。 基础使用&#xff1a; 安装 pnpm&#xff1a;在终端中运行以下命令安装 pn…

JDK-Mac系统和Windows系统安装及Java版本新特性(java9 - java19)

过去岁月不可追&#xff0c; 未来日子要珍惜。 莫愁身外七八事&#xff0c; 且尽眼前两三杯。 当你纠结于过去之时&#xff0c;懊恼与悔恨难免会让你陷入不欢。 当你忧愁于未来之时&#xff0c;未知与不安又会逐渐侵蚀你的心灵。 勿要纠结于过去&#xff0c;勿要忧愁于未来&…

使 Elasticsearch 和 Lucene 成为最佳向量数据库:速度提高 8 倍,效率提高 32 倍

作者&#xff1a;来自 Elastic Mayya Sharipova, Benjamin Trent, Jim Ferenczi Elasticsearch 和 Lucene 成绩单&#xff1a;值得注意的速度和效率投资 我们 Elastic 的使命是将 Apache Lucene 打造成最佳的向量数据库&#xff0c;并继续提升 Elasticsearch 作为搜索和 RAG&a…

排序算法1

文章目录 排序算法冒泡排序代码Python 插入排序代码Python 选择排序代码Python 小结 排序算法 这里先写几种排序算法 排序算法&#xff0c;经典的几种排序算法&#xff0c;就那么几个&#xff0c;如下&#xff1a; 冒泡排序插入排序选择排序归并排序快速排序 这一篇&#xf…

透视天气:数据可视化的新视角

数据可视化在天气方面能够为我们带来极大的帮助。天气是人类生活中一个重要的因素&#xff0c;对于农业、交通、航空、能源等各个领域都有着重要的影响。而数据可视化技术通过将复杂的天气数据转化为直观、易懂的图表、图像或地图等形式&#xff0c;为我们提供了更深入、更全面…

图像处理:时域、空域、频率的滤波介绍

首先要搞清楚为什么会呈现出不同域的维度&#xff0c;来理解和处理图像&#xff0c;原因是图像的构成有多个维度的信息特点。比如一段视频从时间顺序来看&#xff0c;相邻的2个图像帧绝大部分信息是相同的&#xff0c;这就构成了前向预测的理论基础&#xff1b;比如一帧图像从空…