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

【Docker项目实战】使用Docker部署todo任务管理器

【Docker项目实战】使用Docker部署todo任务管理器

  • 一、todo介绍
    • 1.1todo简介
  • 二、本次实践规划
    • 2.1 本地环境规划
    • 2.2 本次实践介绍
  • 三、本地环境检查
    • 3.1 检查Docker服务状态
    • 3.2 检查Docker版本
    • 3.3 检查docker compose 版本
  • 四、下载todo镜像
  • 五、部署todo应用
    • 5.1 创建部署目录
    • 5.2 编辑部署文件
    • 5.3 创建todo容器
    • 5.4 查看todo容器状态
    • 5.5 查看todo容器日志
  • 六、访问todo服务
  • 七、总结

一、todo介绍

1.1todo简介

  • todo简介

待办事项列表管理器(Todo)是一种帮助用户组织和跟踪日常任务的简单工具,通过创建、分类和设置优先级来确保高效地完成各项事务。它通常提供直观的界面和多种功能,如提醒、标签和截止日期设定,以提升个人或团队的生产力。

二、本次实践规划

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为|Ubuntu 22.04.1。

hostnameIP地址操作系统版本Docker版本镜像版本
ubuntu-001192.168.3.251Ubuntu 22.04.1 LTS24.0.7latest

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署todo任务管理器。

三、本地环境检查

3.1 检查Docker服务状态

检查Docker服务是否正常运行,确保Docker正常运行。

root@ubuntu-001:~# systemctl status docker
● docker.service - Docker Application Container EngineLoaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)Active: active (running) since Sun 2024-09-29 08:29:36 UTC; 18min ago
TriggeredBy: ● docker.socketDocs: https://docs.docker.comMain PID: 5227 (dockerd)Tasks: 123Memory: 272.5MCPU: 9.692sCGroup: /system.slice/docker.service├─5227 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

3.2 检查Docker版本

检查Docker版本

root@ubuntu-001:~# docker -v
Docker version 24.0.7, build 24.0.7-0ubuntu2~22.04.1

3.3 检查docker compose 版本

检查Docker compose版本,确保2.0以上版本。

root@ubuntu-001:~#  docker compose version
Docker Compose version v2.19.1

四、下载todo镜像

拉取todo镜像,镜像名称为:prologic/todo

root@ubuntu-001:~# docker pull  prologic/todo
Using default tag: latest
latest: Pulling from prologic/todo
c158987b0551: Pull complete
7beea594d2fb: Pull complete
c080b5dd32b9: Pull complete
a66238e9d965: Pull complete
6d5e0cafd214: Pull complete
d0d22a3a0114: Pull complete
Digest: sha256:417106ae1964d3c7493570b61e643c681129fba7e8b47df290f5f1952980b969
Status: Downloaded newer image for prologic/todo:latest
docker.io/prologic/todo:latest

五、部署todo应用

5.1 创建部署目录

  • 创建部署目录
mkdir -p /data/todo && cd /data/todo
  • 设置目录权限
chmod -R 777 /data/todo/

5.2 编辑部署文件

/data/todo目录下,创建docker-compose.yaml文件,其中宿主机映射端口等可以自定义配置。

version: '3'services:todo:image: prologic/todocontainer_name: todorestart: alwaysports:- 6988:8000volumes:- ./data:/dataenvironment: - THEME=dracula

5.3 创建todo容器

执行以下命令,创建todo容器。

root@ubuntu-001:/data/todo# docker compose up -d
[+] Running 2/2✔ Network todo_default  Created                                                                                                                         0.1s✔ Container todo        Started                                                                                                                         0.4s

5.4 查看todo容器状态

检查todo容器状态状态,确保todo容器正常启动。

root@ubuntu-001:/data/todo# docker compose ps
NAME                IMAGE               COMMAND                  SERVICE             CREATED             STATUS              PORTS
todo                prologic/todo       "/init todo -dbpath …"   todo                9 seconds ago       Up 8 seconds        0.0.0.0:6988->8000/tcp, :::6988->8000/tcp

5.5 查看todo容器日志

检查todo容器日志,确保todo服务正常运行。

root@ubuntu-001:/data/todo# docker compose logs
todo  | usermod: no changes
todo  | Configuring todo...
todo  | Switching UID=1000 and GID=1000

六、访问todo服务

访问地址:http://192.168.3.251:6988,将IP替换为自己服务器IP地址。如果无法访问到以下页面,则检查宿主机的防火墙是否关闭或者放行相关端口,云服务器则还需要设置安全组规则。

在这里插入图片描述

在这里插入图片描述

七、总结

通过Docker部署Todo任务管理器的过程简洁高效,仅需几个命令即可完成环境搭建与应用启动。整个过程不仅提升了开发和部署的效率,还确保了应用在不同环境间的一致性和可移植性。实际使用中,Todo任务管理器运行稳定,界面直观且功能丰富,极大地提高了个人和团队的任务管理效率。这次实战进一步验证了Docker在简化应用部署和维护方面的强大优势。

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

相关文章:

  • [AI React Web]`意图识别`引擎 | `上下文选择算法` | `url内容抓取` | 截图捕获
  • Android 双屏异显技术全解析:从原理到实战的多屏交互方案
  • 开发手记:一个支持自动翻译的H5客服系统
  • TeamViewer 以数字化之力,赋能零售企业效率与客户体验双提升
  • 在线 A2C实践
  • 玩转Docker | 使用Docker部署MediaWiki文档管理平台
  • 大文件上传解决方案
  • React useMemo 深度指南:原理、误区、实战与 2025 最佳实践
  • 【SpringBoot系列-01】Spring Boot 启动原理深度解析
  • C->C++核心过渡语法精讲与实战
  • 深度学习——03 神经网络(2)-损失函数
  • Spring Boot 使用 @NotBlank + @Validated 优雅校验参数
  • react+antd+vite自动引入组件、图标等
  • 适配安卓15(对应的sdk是35)
  • 单片机启动流程详细介绍
  • 开源WAF新标杆:雷池SafeLine用语义分析重构网站安全边界
  • vscode远程服务器出现一直卡在正在打开远程和连接超时解决办法
  • SpringBoot 整合 Langchain4j 系统提示词与用户提示词实战详解
  • IV模型(工具变量模型)
  • 《论文阅读》从特质到移情:人格意识多模态移情反应生成 ACL 2025
  • Dify-17: 扩展模型提供方
  • PyTorch简介
  • layui表格自定义导出数据(选中和全部数据)
  • Debian新一代的APT软件源配置文件格式DEB822详解
  • k8s中的微服务
  • CSS动态视口单位:彻底解决移动端适配顽疾,告别布局跳动
  • Prompt Engineering+AI工具链:打造个人专属的智能开发助手
  • 第六十六篇:AI模型的“口才”教练:Prompt构造策略与自动化实践
  • 从0开始跟小甲鱼C语言视频使用linux一步步学习C语言(持续更新)8.13
  • SplitLanzou安卓版(蓝奏云第三方客户端) v1.8.2 免费版