初次使用Docker的体验笔记总结

初次使用Docker的体验笔记总结

什么是Docker

Docker是一种轻量级的容器虚拟化技术,可以快速构建、打包以及分享便携式容器应用程序。Docker可以在不同的操作系统上共享,具有简单易用、环境隔离等优点。

安装Docker

  • Mac:可以通过Homebrew安装,命令行输入brew install docker
  • Windows:可以从官网下载Docker Desktop进行安装,下载地址
  • Linux:不同的Linux发行版有不同的安装方式,可以参考Docker官方文档进行安装,官方文档地址

运行一个Hello World的容器

  1. 在命令行输入以下命令,将会自动下载并运行一个Docker的Hello World的容器:

docker run hello-world

  1. 如果一切正常的话,将会显示以下的输出:

Hello from Docker!
...

运行一个Python Flask应用程序

我们可以使用Docker来快速地创建、运行Python Flask应用程序环境。

  1. 首先,我们需要在项目根目录创建一个Dockerfile文件,内容如下:

```
FROM python:3.7-alpine

ENV FLASK_APP=app.py

COPY . /app

WORKDIR /app

RUN pip install --no-cache-dir -r requirements.txt

CMD ["flask", "run", "--host=0.0.0.0"]
```

  1. 然后,在终端中运行以下命令进行构建:

docker build -t flask-sample-one:latest .

  1. 构建完成后,使用以下命令来运行容器:

docker run -p 5000:5000 flask-sample-one

  1. 浏览器输入localhost:5000,将会看到Flask应用程序的欢迎页面。

运行一个Nginx反向代理

我们可以使用Docker来快速地创建、运行Nginx反向代理服务器。

  1. 首先,在本地创建一个nginx.conf的配置文件,例如:

```
events {}

http {
upstream backend {
server 192.168.0.1:8080;
server 192.168.0.2:8080;
}

 server {
   listen 80;
   server_name example.com;

   location / {
     proxy_pass http://backend;
     proxy_set_header Host $host;
     proxy_set_header X-Real-IP $remote_addr;
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
     proxy_pass_request_headers on;
   }
 }

}
```

  1. 在本地创建Dockerfile文件,例如:

```
FROM nginx:alpine

RUN rm /etc/nginx/conf.d/default.conf

COPY nginx.conf /etc/nginx/conf.d

EXPOSE 80
```

  1. 运行以下命令进行构建和运行:

```
docker build -t nginx-reverse-proxy .

docker run --name=my-nginx -p 80:80 -d nginx-reverse-proxy
```

  1. 浏览器输入localhost,将会看到Nginx反向代理服务器的欢迎页面。

以上是初次使用Docker的体验笔记总结,希望对大家有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:初次使用Docker的体验笔记总结 - Python技术站

(0)
上一篇 2023年5月16日
下一篇 2023年5月16日

相关文章

  • 搭建Docker私有仓库(自签名方式)

    下面是搭建Docker私有仓库(自签名方式)的完整攻略。 准备工作 在开始之前,需要先安装Docker和Openssl。Docker的安装方法可以参考官方文档,而Openssl的安装方法可以参考系统自带的帮助文档或者linux公社等网站。 步骤一:创建自签名证书 首先,需要创建自签名证书。可以使用以下命令: $ openssl req -newkey rsa…

    Docker 2023年5月15日
    00
  • docker 默认配置文件设置

    一 配置docker启动文件 1.1 docker 官方配置文件解释 1daemon.json文件可配置的参数表,我们在配置的过程中,只需要设置我们需要的参数即可,不必全部写出来。详细参考官网。2下述是官网docs提供的一个示例配置,我们可以参考,选择性的配置其中的部分内容 [root@docker2 ~]# vim /etc/daemon.json { “…

    Docker 2023年4月13日
    00
  • 隔离 docker 容器中的用户

    笔者在前文《理解 docker 容器中的 uid 和 gid》介绍了 docker 容器中的用户与宿主机上用户的关系,得出的结论是:docker 默认没有隔离宿主机用户和容器中的用户。如果你已经了解了 Linux 的 user namespace 技术(参考《Linux Namespace : User》),那么自然会问:docker 为什么不利用 Linu…

    Docker 2023年4月12日
    00
  • docker-docker介绍

    1.docker介绍 1.1 虚拟化技术和相关概念 在计算机中,虚拟化(Virtualization)是一种资源管理技术,是将计算机的各种实体资源,如服务器、网络、内存及存储等,予以抽象转换后呈现出来,打破实体结构间不可切割的障碍,使用户可以比原本的组态更好的方式来应用这些资源。这些资源的新虚拟部门是不受现有资源的架设方式,地域或物理组态所限制。一般所说的虚…

    Docker 2023年4月13日
    00
  • 开发者必备Docker命令小结

    下面是详细讲解“开发者必备Docker命令小结”的完整攻略: 一、Docker简介 Docker是一款基于容器技术的开源应用程序,它能够将应用及其依赖项打包在一个可移植的容器中,从而保证了应用程序在任何环境下均可运行的特性。Docker命令十分复杂,因此开发者需要掌握其基本命令以及语法。 二、Docker常用命令 1. docker run 该命令用来启动一…

    Docker 2023年5月16日
    00
  • Grafana 系列文章(十三):如何用 Loki 收集查看 Kubernetes Events

    前情提要 IoT 边缘集群基于 Kubernetes Events 的告警通知实现 IoT 边缘集群基于 Kubernetes Events 的告警通知实现(二):进一步配置 概述 在分析 K8S 集群问题时,Kubernetes Events 是超级有用的。 Kubernetes Events 可以被当做是日志来处理,格式也和日志很像,都包括: 时间 组件…

    2023年4月10日
    00
  • Linux中Docker安装后如何使用Docker容器

    这里将提供一个在Linux系统上安装Docker并且使用Docker容器的完整攻略。 安装Docker 在安装Docker之前,请确保您的系统已经安装了所需的依赖项和包管理工具,这些依赖项包括 curl、docker和其他包管理器。 1. 安装依赖包管理器 通常,Ubuntu 和 Debian 系统使用 apt 软件包管理器,而 RHEL、CentOS、Fe…

    Docker 2023年5月16日
    00
  • centos下设置nginx,fdfs,docker开机自启动

    1. 设置Nginx开机启动  第一步:进入到/lib/systemd/system/目录 # cd /lib/systemd/system/  第二步:创建nginx.service文件,并编辑  # vim nginx.service  内如如下: [Unit] Description=nginx service After=network.target…

    Docker 2023年4月13日
    00
合作推广
合作推广
分享本页
返回顶部