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>
相关推荐
韩zj8 小时前
docker部署Gitlab社区版,步骤以及外网访问出现502的解决方式
docker·容器·gitlab
ZYMFZ9 小时前
Linux 防火墙 Firewalld
linux·运维·服务器
@t.t.10 小时前
利用Rancher平台搭建Swarm集群
docker·rancher
奔跑吧 android14 小时前
【linux kernel 常用数据结构和设计模式】【数据结构 2】【通过一个案例属性list、hlist、rbtree、xarray数据结构使用】
linux·数据结构·list·kernel·rbtree·hlist·xarray
NiKo_W16 小时前
Linux 文件系统与基础指令
linux·开发语言·指令
Darkwanderor17 小时前
Linux 的权限详解
linux
SabreWulf202018 小时前
Ubuntu 20.04手动安装.NET 8 SDK
linux·ubuntu·avalonia·.net8
不是吧这都有重名18 小时前
为什么ubuntu大文件拷贝会先快后慢?
linux·运维·ubuntu
sunshine-sm18 小时前
CentOS Steam 9安装 Redis
linux·运维·服务器·redis·centos
Davie_Liu18 小时前
【Docker Buildx】docker buildx本地构建多架构镜像,拉取镜像时的网络延迟问题(已解决)
网络·docker·buildx