Docker 容器入门基础:Cloud Studio 在线 Linux 环境上手

发布时间:2026/9/6 6:50:10

Docker 容器入门基础:Cloud Studio 在线 Linux 环境上手
目录前言一、Docker 核心概念回顾二、Cloud Studio 安装 Docker2.1 查看系统版本2.2 安装 Docker 引擎2.3 启动 Docker 服务2.4 免 sudo 执行 docker可选三、Docker 高频命令整理镜像相关容器相关数据卷操作文件拷贝 宿主机 ↔ 容器镜像构建与推送 Docker HubDockerfile 示例 (Python 项目)四、实战案例Nginx 自定义网页部署步骤 1创建项目文件步骤 2创建数据卷步骤 3启动 Nginx 容器步骤 4拷贝配置和网页文件到容器步骤 5重载 Nginx 配置生效步骤 6Cloud Studio 预览访问五、常见踩坑总结六、总结前言很多同学做开发学习时本地安装 Docker 会遇到 Windows/WSL 冲突、虚拟机占用资源高等问题。Cloud Studio 在线开发环境提供开箱即用的 Linux 实例可以直接在浏览器完成 Docker 学习、镜像构建、容器部署、数据卷挂载全套操作无需本地配置环境。本文结合 Docker 核心概念、常用命令、Nginx 完整实战案例记录在 Cloud Studio (Linux) 部署 Docker 的全过程同时修正日常敲命令常见笔误适合 Docker 入门练习。环境说明Cloud Studio Ubuntu 工作空间部分免费实例权限受限Docker 操作需要sudo管理员权限。一、Docker 核心概念回顾表格名词说明镜像 (Image)相当于类、模板只读模板用来创建容器例如 nginx、mysql 镜像容器 (Container)镜像运行后的实例独立隔离运行环境可读写仓库 (Registry)存放镜像的仓库默认 Docker Hub可以拉取、推送自定义镜像数据卷 (Volume)实现宿主机和容器之间数据持久化同步容器删除数据不会丢失Dockerfile文本脚本自动化编写镜像构建步骤一键生成自定义镜像二、Cloud Studio 安装 Docker⚠️重要提示Cloud Studio 工作空间重启之后Docker 服务不会自动保留需要重新启动 Docker 服务。2.1 查看系统版本打开 Cloud Studio 内置终端cat /etc/os-release绝大多数实例为 Ubuntu 系统下面安装命令适配 Ubuntu。2.2 安装 Docker 引擎# 更新软件源 sudo apt update # 安装依赖工具 sudo apt install ca-certificates curl gnupg lsb-release -y # 添加Docker官方GPG密钥 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg # 添加Docker软件源 echo deb [arch$(dpkg --print-architecture) signed-by/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable | sudo tee /etc/apt/sources.list.d/docker.list /dev/null # 更新源并安装docker sudo apt update sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y2.3 启动 Docker 服务# 启动docker服务 sudo systemctl start docker # 设置开机自启Cloud Studio重启失效仅本地虚拟机生效 sudo systemctl enable docker # 验证是否安装成功运行hello-world测试容器 sudo docker run hello-world踩坑部分 Cloud Studio 环境不支持systemctl执行报错使用后台启动方式sudo dockerd 2.4 免 sudo 执行 docker可选每次敲 docker 命令加 sudo 比较麻烦可以把当前用户加入 docker 用户组。sudo usermod -aG docker $USER执行完成后关闭当前终端重新打开新终端生效。三、Docker 高频命令整理镜像相关# 查看本地全部镜像 docker images # 拉取镜像 格式 docker pull 镜像名:标签 docker pull nginx:latest # 搜索镜像 docker search mysql # 删除镜像 docker rmi nginx:latest容器相关# 查看正在运行容器 docker ps # 查看所有容器包含停止的 docker ps -a # 运行容器 # --name 指定容器名称 -d 后台运行 -p 宿主机端口:容器端口 -e 设置环境变量 -v 挂载数据卷 docker run --name my-nginx -d -p 8080:80 nginx # 启动停止的容器 docker start 容器ID/容器名 # 停止运行中的容器 docker stop 容器ID/容器名 # 删除已经停止的容器 docker rm 容器ID/容器名 # 进入正在运行容器内部 docker exec -it 容器名 bash数据卷操作数据卷实现容器数据持久化容器销毁数据依然保留。# 列出所有数据卷 docker volume ls # 创建数据卷 docker volume create nginx_html # 删除数据卷 docker volume rm nginx_html文件拷贝 宿主机 ↔ 容器# 宿主机本地文件复制到容器 docker cp 本地路径 容器ID:容器内路径 # 容器文件复制到宿主机本地 docker cp 容器ID:容器内路径 本地路径镜像构建与推送 Docker Hub# 根据Dockerfile构建镜像 -t 指定镜像名:标签 docker build -t my-python:v1 . # 给镜像打tag用于推送hub docker tag my-python:v1 用户名/my-python:v1 # 登录Docker Hub docker login -u 你的用户名 # 推送镜像到仓库 docker push 用户名/my-python:v1Dockerfile 示例 (Python 项目)新建Dockerfile文件无后缀名FROM python:3.10-slim # 设置环境变量 ENV HOME/app \ PORT5000 # 设置工作目录 WORKDIR $HOME # 将requirements.txt复制到工作目录 COPY requirements.txt $HOME/requirements.txt # 安装依赖 RUN pip install -r requirements.txt # 复制当前目录下的所有文件到工作目录 COPY . /app # 暴露端口 EXPOSE $PORT # 运行程序 CMD [python, web.py]四、实战案例Nginx 自定义网页部署业务目标自定义 html 页面、自定义 Nginx 配置文件使用数据卷挂载Cloud Studio 预览访问网页。 注意Cloud Studio 不能直接访问容器内部端口需要映射宿主机端口在右上角端口面板打开预览。步骤 1创建项目文件在工作空间创建文件夹my_font存放网页和配置文件mkdir my_font cd my_fonthome.html自定义页面!DOCTYPE html html langen head meta charsetUTF-8 meta nameviewport contentwidthdevice-width, initial-scale1.0 titleDocker测试页面/title /head body h1ni hao 你好欢迎来到我的第一个镜像网页/h1 pCloud Studio Nginx Docker容器部署成功/p /body /htmlhome.conf自定义 nginx 配置server { listen 10000; root /usr/share/nginx/html; index home.html; }步骤 2创建数据卷docker volume create nginx_html docker volume create nginx_conf # 查看创建好的数据卷 docker volume ls步骤 3启动 Nginx 容器docker run --name nginx \ -d \ -p 9090:80 \ -p 7777:10000 \ -v nginx_html:/usr/share/nginx/html \ -v nginx_conf:/etc/nginx/conf.d/ \ nginx-p 9090:80宿主机 9090 端口映射容器 80 端口-p 7777:10000宿主机 7777 端口映射容器 10000 端口-v挂载两个数据卷页面文件、配置持久化步骤 4拷贝配置和网页文件到容器# 获取容器ID docker ps # 将本地文件复制进容器替换为你的实际容器ID docker cp my_font/home.html 容器ID:/usr/share/nginx/html docker cp my_font/home.conf 容器ID:/etc/nginx/conf.d/步骤 5重载 Nginx 配置生效docker exec -it 容器ID nginx -s reload步骤 6Cloud Studio 预览访问Cloud Studio 右上角打开端口面板分别打开9090和7777端口点击预览链接即可在浏览器看到页面。数据卷的优势后续重新创建新容器只要挂载这两个数据卷网页和配置数据依然存在不会丢失。五、常见踩坑总结Cloud Studio 重启工作空间Docker 服务停止需要重新执行sudo systemctl start docker命令拼写错误dockre、vlume属于手误正确为docker images、docker volume端口访问不了确认容器正常运行确认 Cloud Studio 端口面板打开对应端口检查 nginx 配置重载。文件复制不生效核对容器 ID、容器内路径Nginx 网页目录/usr/share/nginx/html配置目录/etc/nginx/conf.d/。权限不足命令前面加上sudo执行。六、总结Cloud Studio 在线环境非常适合学习 Docker不用折腾本地环境。 核心流程安装 Docker 引擎 → 掌握镜像、容器、数据卷命令 → 通过 Dockerfile 构建自定义镜像结合数据卷完成数据持久化。完成 Nginx 案例之后可以继续拓展 MySQL、Python 后端项目容器化部署

相关新闻

AI Slop治理实战:识别技术、规则引擎与模型防线的搭建

AI Slop治理实战:识别技术、规则引擎与模型防线的搭建

2026/9/6 6:50:10

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

长春男性相关生活知识科普

长春男性相关生活知识科普

2026/9/6 6:50:10

开春之后连着抽了几个傍晚沿着长春老城区的街路散步,本来是想记录下气温回暖之后街头的新变化,走了大半个月下来,最直观的感受就是,这座城市的便民配套藏在很多不起眼的小角落,很多之前没特意留意的点位,其…

福建专升本考事业编,先别纠结“认不认“,先核对两件事:专业对得上、时间赶得上

福建专升本考事业编,先别纠结“认不认“,先核对两件事:专业对得上、时间赶得上

2026/9/6 6:50:10

福州、厦门、泉州、漳州、莆田、宁德、龙岩、三明、南平的上班族,拿着专升本学历想考事业编,脑子里反复转的是同一个问题:"我这学历,单位到底认不认?" 于是查了一堆"专升本能不能考编"的说法&…

AI服务工具化实战:从接口封装到批量任务处理

AI服务工具化实战:从接口封装到批量任务处理

2026/9/6 8:00:22

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

只做可观可测,不做可调可控,整套四可方案属于不合格

只做可观可测,不做可调可控,整套四可方案属于不合格

2026/9/6 8:00:22

在广东光伏四可合规改造与新建并网项目中,存在一个极为普遍的合规误区:很多项目认为只要完成数据采集、后台展示、数据上送,就算做完了四可改造。大量低价简化方案,只做“可观、可测”数据层面建设,刻意省略“可调、可…

离散制造智能工厂总体解决方案:从架构到落地实践

离散制造智能工厂总体解决方案:从架构到落地实践

2026/9/6 8:00:22

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

什么是终端安全防护系统?跳出概念,从运维落地视角拆解核心定位与能力边界

什么是终端安全防护系统?跳出概念,从运维落地视角拆解核心定位与能力边界

2026/9/6 8:00:22

内网安全整改项目做多了,经常遇到一个基础问题:不少运维人员认为,给电脑装了杀毒软件,就等同于部署了终端安全防护系统。等到出现图纸外泄、外来 U 盘带入勒索病毒、员工私自安装不明软件等事件之后,才发现现有产品缺少…

AIGC检测报告是什么意思?维普总AI率和疑似段落应该怎么看?

AIGC检测报告是什么意思?维普总AI率和疑似段落应该怎么看?

2026/9/6 8:00:22

AIGC检测报告是什么意思?维普总AI率和疑似段落应该怎么看? 维普的AIGC检测报告拿到手,大部分人只看第一页那个总AI率,看完就直接去改标红的句子。真正决定你这轮改得对不对的,其实是报告里另外几个不显眼的地方&#…

东莞职业培训怎么选?师资雄厚经验足是关键

东莞职业培训怎么选?师资雄厚经验足是关键

2026/9/6 7:50:13

摘要:东莞职业培训市场机构数量庞大,但师资水平参差不齐,超过60%的学员在择校时最关注“师资力量与实操经验”(行业调研数据)。单纯堆砌“名师头衔”已无法满足就业需求,以东莞市信誉职业培训学校为代表的头…

中国人民大学杨琳团队《Nature Communications》 | 全球潮汐湿地土壤有机碳时空格局与环境驱动:一项2009-2020年的全球评估

中国人民大学杨琳团队《Nature Communications》 | 全球潮汐湿地土壤有机碳时空格局与环境驱动:一项2009-2020年的全球评估

2026/9/6 1:19:56

本文首发于“生态学者”!从“湿地面积”到“土壤碳密度”:为什么需要重新认识潮汐湿地蓝碳变化?潮汐湿地位于陆地与海洋的交汇地带,包括红树林、盐沼和潮滩,是全球重要的蓝碳生态系统。其土壤能够长期储存大量有机碳&a…

adb抓包

adb抓包

2026/9/6 1:19:56

前言 本文介绍如何通过 tcpdump 在 Android 手机上抓取网络数据包,并在电脑端使用 Wireshark 进行分析。适用于需要排查 App 网络请求、分析接口调用或调试网络问题的开发与测试场景。1. 手机要有 root 权限2. 下载 tcpdump3. adb push C:\Users\zhangkuixun\Downlo…

大模型推理镜像极简瘦身:从 25GB 巨无霸到 3GB 精简镜像实战

大模型推理镜像极简瘦身:从 25GB 巨无霸到 3GB 精简镜像实战

2026/9/6 1:19:56

大模型推理镜像极简瘦身:从 25GB 巨无霸到 3GB 精简镜像实战 在云原生基础设施中,容器镜像体积直接决定了服务的部署速度与弹性扩容敏捷度。对于传统的 Go / Java 微服务,镜像体积通常被严格控制在 50MB 到 200MB 以内,拉取镜像只…

中国人民大学杨琳团队《Nature Communications》 | 全球潮汐湿地土壤有机碳时空格局与环境驱动:一项2009-2020年的全球评估

中国人民大学杨琳团队《Nature Communications》 | 全球潮汐湿地土壤有机碳时空格局与环境驱动:一项2009-2020年的全球评估

2026/9/6 1:19:56

本文首发于“生态学者”!从“湿地面积”到“土壤碳密度”:为什么需要重新认识潮汐湿地蓝碳变化?潮汐湿地位于陆地与海洋的交汇地带,包括红树林、盐沼和潮滩,是全球重要的蓝碳生态系统。其土壤能够长期储存大量有机碳&a…

adb抓包

adb抓包

2026/9/6 1:19:56

前言 本文介绍如何通过 tcpdump 在 Android 手机上抓取网络数据包,并在电脑端使用 Wireshark 进行分析。适用于需要排查 App 网络请求、分析接口调用或调试网络问题的开发与测试场景。1. 手机要有 root 权限2. 下载 tcpdump3. adb push C:\Users\zhangkuixun\Downlo…

大模型推理镜像极简瘦身:从 25GB 巨无霸到 3GB 精简镜像实战

大模型推理镜像极简瘦身:从 25GB 巨无霸到 3GB 精简镜像实战

2026/9/6 1:19:56

大模型推理镜像极简瘦身:从 25GB 巨无霸到 3GB 精简镜像实战 在云原生基础设施中,容器镜像体积直接决定了服务的部署速度与弹性扩容敏捷度。对于传统的 Go / Java 微服务,镜像体积通常被严格控制在 50MB 到 200MB 以内,拉取镜像只…

远程协作的工作台整理

远程协作的工作台整理

2026/9/3 6:56:24

远程协作的工作台整理远程协作的核心不是再加一个工具,而是让交接信息足够完整。异步任务要写明目标、输入位置、完成标准和需要决策的人。 工作台的最小配置 将日程、待办、代码和沟通入口收拢到少数固定位置;通知按紧急程度分层。工作台不需要模仿办公…

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

2026/9/4 7:42:10

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

2026/9/5 23:14:13

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…