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>
相关推荐
lzx_0023 小时前
Linux 进程(三) 从进程状态到僵尸进程、孤儿进程
linux·服务器
FlightYe5 小时前
音视频修炼之容器与协议(四):RTSP详解
android·linux·ffmpeg·音视频·dash
刘马想放假6 小时前
CANviz 使用指南|Linux 安装、DBC 解码、实时曲线与 J1939 实战
linux·python·websocket
kloc7 小时前
聊天室项目入口网关子服务的实现
linux·c++
GeW7 小时前
深圳APEC峰会倒计时:数据库与Linux运维的"隐形考场"
linux
duansamve8 小时前
Python3+Flask+PostgreSQL18+Vue3项目生产环境用docker如何部署?
python·docker·flask
梦到啥说啥8 小时前
Linux网络编程:UDP网络协议
linux·网络协议·udp
无足鸟ICT9 小时前
【RHCA+】ipcrm命令(删除IPC资源)
linux
星恒随风10 小时前
MySQL 从零入门(四):表的增删改查与基础查询详解
linux·服务器·数据库·笔记·mysql
Zucker n12 小时前
文献发现、课题组织与证据可追溯的论文阅读。
论文阅读·windows·ubuntu