《Docker教程二》容器使用

 

参数--help:了解指定的 Docker 客户端命令使用方法

 

1、运行一个web应用

       在docker容器中运行一个 Python Flask 应用来运行一个web应用

       docker pull training/webapp

       docker run -d -P training/webapp python app.py

              参数说明:

-d:让容器在后台运行

-P:将容器内部使用的网络端口映射到我们使用的主机上

       ps可见容器的端口0.0.0.0:32768->5000/tcp,Docker 开放了 5000 端口(默认 Python Flask 端口)映射到主机端口 32769 上。

       浏览器访问WEB应用。注意:使用宿主机IP是无法访问的

       问题和解决办法:https://www.cnblogs.com/hypnus-ly/p/8683215.html

       docker是运行在Linux上的,在Windows中运行docker,实际上还是在Windows下先安装了一个Linux环境,然后在这个系统中运行的docker。也就是说,服务中使用的localhost指的是这个Linux环境的地址,而不是我们的宿主环境Windows。因此,要访问WEB应用,需要找到该Linux环境的地址:

       使用命令:docker-machine ip default

       地址默认为:192.168.99.100

       使用浏览器:192.168.99.100:32759,访问成功

2、定制web应用的访问端口

       docker run -d -p 5000:5000 training/webapp python app.py

       将端口定在5000,使用浏览器:192.168.99.100:5000,访问成功

3、网络端口的快捷方式

       docker port(ID或者名字) 可以查看容器的某个确定端口映射到宿主机的端口号

4、查看WEB应用程序日志

       docker logs [ID或者名字] 可以查看容器内部的标准输出

       参数-f:长时间查看输出

              docker logs -f focused_yonath

* Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)

192.168.99.1 - - [10/Jul/2018 07:01:55] "GET / HTTP/1.1" 200 -

192.168.99.1 - - [10/Jul/2018 07:01:55] "GET /favicon.ico HTTP/1.1" 404 -

192.168.99.1 - - [10/Jul/2018 07:15:57] "GET / HTTP/1.1" 200 -

192.168.99.1 - - [10/Jul/2018 07:16:04] "GET / HTTP/1.1" 200 –

5、查看WEB应用程序容器的进程

       docker inspect (ID或者名字)

6、停止WEB应用容器

       docker stop (ID或者名字)

7、重启WEB应用容器

       docker start (ID或者名字)

8、查询最后一次创建的容器

       docker ps -l

9、移除WEB应用容器

       docker rm (ID或者名字)

       注意:删除容器时,容器必须是停止状态

10、删除停止的容器

       显示停止的容器:docker ps -a

       删除容器:docker kill 容器

       删除所有已停止的容器:docker rm $(docker ps -a -q)

<think>好的,用户想要查找关于Docker容器使用教程,特别是针对初学者的指南。我需要根据用户提供的引用内容来整理相关信息,并生成一个结构清晰的回答。首先,看看用户提供的引用内容。 引用[1]提到了修复Docker容器漏洞,这可能和安全相关,但用户现在需要的是使用教程,所以这个引用可能不太相关,不过可以暂时留着备用。引用[2]详细说明了Docker的端口映射,特别是如何将容器内部的端口映射到主机,这应该是使用Docker运行服务时的关键步骤,需要重点强调。引用[3]是关于volume映射的操作,具体是通过docker cp命令复制文件,这可能涉及数据持久化,这也是Docker使用中的重要部分,应该包含在教程里。引用[4]和[5]分别是关于Kubernetes和AWS EC2的指南,可能和Docker相关,但用户明确需要Docker容器教程,所以这两个可能暂时不需要,但需要确认是否有相关内容。 用户可能需要从基础开始,比如安装、运行容器、端口映射、数据卷管理、常用命令等。根据引用[2]中的端口映射部分,应该详细解释docker run -p参数的用法。引用[3]中的volume映射也是一个重点,数据持久化对容器来说很重要,避免数据丢失。另外,用户可能还需要一些基本的命令,比如启动、停止容器,查看日志等。 需要确保回答结构清晰,分步骤讲解。可能的结构是:安装Docker -> 运行第一个容器 -> 端口映射 -> 数据卷管理 -> 常用命令 -> 学习资源。每个部分结合引用内容中的例子,比如引用[2]中的端口映射命令,引用[3]中的volume操作。 还要注意用户提到“beginner guide”,所以需要从基础开始,避免太深入的高级话题。可能需要包括一些常见问题,比如如何访问容器内的服务,如何处理数据持久化,如何查看运行中的容器等。 另外,用户提供的引用中有提到“docker run -p <host port>:<container port>”,这个需要详细说明,可能给出具体的例子,比如运行nginx并将80端口映射到主机的8080端口。数据卷部分可以结合docker cp命令,或者使用-v参数进行目录挂载。 需要检查是否有遗漏的重要点,比如Dockerfile的编写,构建镜像,但用户可能暂时只需要容器使用的基础知识,所以可能不需要深入Dockerfile,除非教程中包含这部分。但作为初学指南,可能还是需要简单提及如何获取镜像,运行容器等基本操作。 最后,生成相关问题,可能需要包括如何安装Docker,优化容器性能,安全实践,多容器管理,Dockerfile使用等,结合引用中的内容,比如引用[1]的安全问题,引用[4]的K8s可能作为扩展。 现在需要组织这些内容,确保每个步骤都有对应的引用支持,并且语言简洁明了,适合初学者。</think>### Docker 容器使用入门指南 #### 1. **安装 Docker** - 访问[Docker 官网](https://www.docker.com/)下载对应操作系统的安装包。 - 安装完成后,在终端输入 `docker --version` 验证是否成功[^1]。 #### 2. **运行第一个容器** - 使用 `docker run` 命令启动容器。例如,运行一个 Nginx 服务: ```bash docker run -d --name my-nginx nginx ``` - `-d` 表示后台运行,`--name` 指定容器名称[^2]。 #### 3. **端口映射:访问容器服务** - 容器默认隔离网络,需通过**端口映射**暴露服务。例如将主机的 8080 端口映射到容器的 80 端口: ```bash docker run -d -p 8080:80 --name web-server nginx ``` - 访问 `http://localhost:8080` 即可看到 Nginx 默认页面。 #### 4. **数据卷管理:持久化容器数据** - 使用 `-v` 参数挂载主机目录到容器,避免数据丢失: ```bash docker run -d -v /host/data:/container/data --name data-container ubuntu ``` - 复制文件到容器(或反向)可使用 `docker cp`: ```bash docker cp /mnt/local-file.txt my-container:/path/in/container [^3] ``` #### 5. **常用命令** - 查看运行中的容器:`docker ps` - 停止容器:`docker stop <容器名>` - 查看容器日志:`docker logs <容器名>` - 进入容器终端:`docker exec -it <容器名> /bin/bash` #### 6. **学习资源扩展** - 官方文档:[Docker Docs](https://docs.docker.com/) - 进阶主题:Kubernetes 容器编排(参考[K8s 入门指南][^4]) --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值