在Linux上安装Docker并进行部署

Docker是一种流行的容器化平台,它允许开发者将应用程序及其所有依赖项打包到一个轻量级的容器中。这种方式不仅使得应用程序的部署变得简单,还可以确保不同环境之间的一致性。在本文中,我们将探讨在Linux上安装Docker的步骤,并通过代码示例来说明如何部署一个简单的应用程序。

1. 安装Docker

在Linux上安装Docker的过程相对简单。以下步骤适用于基于Debian的系统(如Ubuntu)。请根据你的系统版本调整相应命令。

1.1 更新系统

首先,确保你的系统是最新的。你可以使用以下命令更新你的包列表和已安装的包:

sudo apt update
sudo apt upgrade -y

1.2 安装必要的依赖

为了允许 apt 从HTTPS源安装软件,还需要安装一些必要的工具:

sudo apt install \
    apt-transport-https \
    ca-certificates \
    curl \
    software-properties-common -y

1.3 添加Docker的官方GPG密钥

接下来,我们需要添加Docker的官方GPG密钥,以确保下载的软件的可信性:

curl -fsSL  | sudo apt-key add -

1.4 添加Docker的仓库

然后,你可以添加Docker的官方存储库:

sudo add-apt-repository "deb [arch=amd64]  $(lsb_release -cs) stable"

1.5 安装Docker

现在,你可以安装Docker了:

sudo apt update
sudo apt install docker-ce -y

1.6 验证安装

最后,确认Docker是否成功安装:

sudo systemctl status docker

这时,你应该会看到Docker服务正在运行。

2. 使用Docker运行一个应用

一旦Docker安装完成,我们就可以使用它来运行一个简单的应用程序。这里我们将使用一个基于Node.js的示例。

2.1 创建一个简单的Node.js应用

首先,在你的主目录下创建一个新的目录,以存放你的应用:

mkdir ~/my-docker-app
cd ~/my-docker-app

然后,创建一个 app.js 文件并添加以下代码:

const http = require('http');

const hostname = '0.0.0.0'; // 允许所有IP访问
const port = 3000;

const server = http.createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/plain');
  res.end('Hello World\n');
});

server.listen(port, hostname, () => {
  console.log(`Server running at http://${hostname}:${port}/`);
});

2.2 创建一个Dockerfile

接下来,创建一个名为 Dockerfile 的文件,内容如下:

# 使用官方Node.js镜像作为基础镜像
FROM node:14

# 设置应用目录
WORKDIR /usr/src/app

# 复制当前目录内容到容器内
COPY . .

# 安装应用依赖
RUN npm install

# 使端口3000可共用
EXPOSE 3000

# 启动应用
CMD ["node", "app.js"]

2.3 构建Docker镜像

在终端中运行以下命令来构建Docker镜像:

docker build -t my-node-app .

2.4 运行Docker容器

构建成功后,运行容器:

docker run -p 3000:3000 my-node-app

现在,你可以通过访问 http://localhost:3000 来查看这个简单的Node.js应用。

3. 项目计划

为了让我们更好地规划Docker项目,我们可以使用甘特图来表示主要步骤和时间安排。以下是我们的甘特图示例:

gantt
    title Docker Installation and Deployment Plan
    dateFormat  YYYY-MM-DD
    section Install Docker
    Update system             :a1, 2023-10-01, 1d
    Install dependencies       :a2, after a1, 1d
    Add GPG key               :a3, after a2, 1d
    Add Docker repository      :a4, after a3, 1d
    Install Docker            :a5, after a4, 1d
    Check installation         :a6, after a5, 1d
    section Deploy Application  
    Create Node.js app        :b1, 2023-10-07, 2d
    Create Dockerfile         :b2, after b1, 1d
    Build Docker image        :b3, after b2, 1d
    Run Docker container       :b4, after b3, 1d

结论

通过以上步骤,你成功地在Linux系统上安装了Docker,并搭建了一个简单的Node.js应用。Docker不仅能简化应用的部署流程,还能为开发者提供一致的运行环境。希望本文对你了解Docker有所帮助,并激励你在实际项目中使用这项强大的技术。无论是个人项目还是企业级应用,Docker都能为你的开发工作带来巨大的便利。