当前位置: 首页 > news >正文

【实操记录】docker hello world

Docker可以在Windows10中使用,但是需要是64位专业版、企业版或教育版

我们的PC基本都是家庭版

所以直接在阿里云服务器ECS实例上(Ubuntu 22.04 64位)操作

ECS有现成的安装Docker的实践教程

安装Docker并使用镜像仓库ACR_云服务器 ECS(ECS)-阿里云帮助中心

但是在安装部署的过程中遇到了以下几个问题和解决方法,可能是误打误撞但是先记一下

(由于后面有点别的事情所以导致和ECS连接超时了,错误信息没留到T_T)

1、安装后在启动docker时失败

sudo systemctl start docker

解:卸载后重装

2、拉取Nginx镜像时失败

sudo docker pull nginx:latest

解:配置Docker Hub镜像源,编辑配置文件/etc/docker/daemon.json

{"registry-mirrors":["<加速器地址>"]
}

【阿里云容器镜像服务ACR镜像加速器】地址在【容器镜像服务控制台】

3、创建Dockerfile设置Nginx作为基础镜像,并在Web服务器的根目录创建一个显示Hello World!的index.html文件

sudo tee Dockerfile <<-'EOF'
FROM nginx:latest
RUN echo 'Hello World!' > /usr/share/nginx/html/index.html
EOF

构建镜像,镜像名称为hello-world

sudo docker build . -t hello-world:latest

 启动Web程序镜像的容器,并且命名容器名称为hello-world

sudo docker run -d -p 80:80 --name hello-world hello-world:latest

这里报了两个错:

1、大概是说“hello-world”这个name已经被其他container占用了,需要我把原来这个删除掉再创建,或者换一个其他的新name

解:我把代码改成了下面这样,就是启动"hello-world:latest"这个程序镜像,将其命名为hello-docker-world"

sudo docker run -d -p 80:80 --name hello-docker-world hello-world:latest

2、 这里就变成新的错误了,刚好朋友来聊天,问了他,他是这么翻译的:

“80端口被占用了,80端口是http协议的默认端口,443是https的默认端口,不用想了”

“我一般做映射都是直接干10000以后的”

我又问“那个80:80是什么意思呢”

“前面是宿主机端口,后面是docker容器的端口”

“如果是10086:80,就表示在访问宿主机的10086端口的时候等同于访问docker容器的80端口”

于是我把命令改成了

sudo docker run -d -p 10000:80 --name hello-world hello-world:latest

继续报错如下

 说的是,这个叫"/hello-world-docker"的container已经被使用了

朋友解答的是:

“即使没run成功也会给你创建,这个时候,你得删了那个报错的再run,docker rm [id or name]”

“删之前要先stop, docker stop [id or name]”

所以大概是这个意思:

于是我照他说的又执行了一次,成功了:

http://www.dtcms.com/a/298146.html

相关文章:

  • lesson24:Python的logging模块
  • 【pybind11】 pybind11如何调用python
  • Scrapy
  • 佳能iR-ADV C5560复印机如何扫描文件到电脑
  • 微信小程序中英文切换miniprogram-i18n-plus
  • HTTP 与 SpringBoot 参数提交与接收协议方式
  • Orbbec开发---数据流与数据流操作
  • “即时零售”风起,E3+企业中台如何赋能品牌企业破局增长?
  • 单片机(STM32-ADC模数转换器)
  • 软件异常读写威胁硬盘安全:从过往案例到防护之道
  • 05.原型模式:从影分身术到细胞分裂的编程艺术
  • jQuery事件方法:bind、live、delegate、on对比
  • 秒收蜘蛛池解析机制的原理
  • Sulfo-CY3 Alkyne磺酸基Cy3-炔
  • 猛犸世纪接连登上《IT时报》《第一财经》,GEO优化走向AI营销主舞台
  • jwt 验证方法 (ASP.NET Core)
  • Android 15中的16KB大页有何优势?
  • 使用vllm创建相同模型的多个实例,使用nginx进行负载均衡,提高模型吞吐量
  • 浅谈数字花园
  • jenston nano+conda+pytorch的部署办法
  • 一次“非法指令”(SIGILL)问题的完整调试过程:CPU指令集兼容性探秘
  • Windows Server 2003 R2系统C盘扩容教程
  • 本地部署Dify教程
  • 软件工程之可行性研究:从理论到实践的全面解析
  • Tomcat线程池深度优化指南:高并发场景下的maxConnections计算与监控体系
  • 当人机交互迈向新纪元:脑机接口与AR/VR/MR的狂飙之路
  • 管理 GitHub Pages 站点的自定义域(Windows)
  • 【Web】DASCTF 2025上半年赛 wp
  • 牛客刷题记录01
  • 软件工程的工具链演进