Linux下的Docker安装,以Ubuntu为例

Docker是一种流行的容器化平台,它能够简化应用程序的部署和管理。

Docker安装

1、检查卸载老版本Docker(为保证安装正确,尽量在安装前先进行一次卸载)

复制代码
apt-get remove docker docker-engine docker.io containerd runc

2、Docker更新包管理器

运行以下命令以确保Ubuntu系统更新到最新版本的软件包列表:

复制代码
sudo apt-get update

3、安装docker依赖软件包

Docker需要一些依赖软件包。可以安装这些依赖项:

复制代码
sudo apt-get install apt-transport-https ca-certificates curl software-properties-common

4、添加Docker存储库的官方GPG密钥

运行以下命令来添加Docker存储库的GPG密钥,以确保下载的软件包来自Docker官方源:

复制代码
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

5、添加Docker软件源

添加Docker的存储库,这里添加的是阿里云:

6、安装Docker

更新软件包列表后,您可以安装Docker:

7、启动Docker服务

安装完成后,可以启动Docker服务:

复制代码
sudo systemctl start docker

启动完成后,可以使用下面的命令查看docker的版本

复制代码
docker -v

8、Docker拉取helloworld镜像

这里提示在本地没有找到hello-world的镜像,因此从远程进行拉取

复制代码
 sudo docker run hello-world

9、Docker查看本机所有的images(镜像)

复制代码
docker images

我们成功在Ubuntu系统上安装了docker。

Docker网络

Docker网络是一种用于连接Docker容器的网络技术。

基于虚拟网络,不同的容器可以通过虚拟网络来通信。

1、Docker网络查看以及介绍

复制代码
docker network ls

在安装docker时,会自动创建三种不同网络,分别是bridge、host以及none。

bridge网络代表docker0,ocker守护程序默认将容器连接到此网络。

可以使用docker run --network=[your_network]选项指定链接的网络

使用docker run创建Docker容器时,可以用 --net 选项指定容器的网络模式,Docker可以有以下4种网络模式:

|-----------|---------------------------|--------------------------------------------------------------------------|
| 四种模式 | 参数形式 | 含义 |
| host | --net=host | 容器和宿主机共享Network namespace。 容器将使用宿主机的IP和端口。 |
| none | --net=none | 禁用容器的网络功能。 |
| bridge | --net=bridge(默认) | 会为每一个容器分配、设置IP等,并将容器连接到一个docker0虚拟网桥,通过docker0网桥以及Iptables nat表配置与宿主机通信。 |
| container | --net=contaioner:Name或者ID | 容器和另外一个容器共享Network namespace。 创建的容器不会创建自己的网卡,配置自己的IP,而是和一个指定的容器共享IP、端口范围 |

2、Docker网络创建

复制代码
docker network create mytest

这里成功创建了一个名称为mytest的Docker网络(默认就是bridge)

SpringBoot项目打包成Docker镜像

1、spring-boot-maven-plugin插件

主要用于打包,用来将项目打包成JAR或者WAR文件(生成FAT包)。

这个插件生成的包是可执行的JAR。

复制代码
<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
</build>
相关推荐
❀͜͡傀儡师18 小时前
ShadowBroker:实时全球情报地图,开源情报(OSINT)的终极聚合平台
docker·容器·llama
kcuwu.18 小时前
从0到1:VMware搭建CentOS并通过FinalShell玩转Linux命令
linux·运维·centos
s65166549618 小时前
linux-内核结构体
linux
.柒宇.18 小时前
MySQL双主同步
linux·数据库·mysql·docker
格林威19 小时前
AI视觉检测:INT8 量化对工业视觉检测精度的影响
linux·运维·人工智能·数码相机·计算机视觉·视觉检测·工业相机
万山寒19 小时前
linux日志查询,查找某个关键词后面的内容
linux·运维·服务器
房开民19 小时前
ubuntu中安装claude code
linux·运维·ubuntu
Bert.Cai19 小时前
Linux mv命令详解
linux·运维
头铁的伦19 小时前
QNX 网络模型
linux·网络·车载系统
小贾要学习19 小时前
【Linux】TCP网络通信编程
linux·服务器·网络·c++·网络协议·tcp/ip