【Docker项目实战】使用Docker部署Calcium网页计算器

简介: 【10月更文挑战第7天】使用Docker部署Calcium网页计算器

一、Calcium介绍

1.1 Calcium简介

  • Calcium简介

Calcium 是一款基于网络的应用程序,使用 React 和 TypeScript 构建而成。它主要功能是一款高级在线计算器,能够执行复杂的数学运算并具备一系列实用的功能。

1.2 Calcium功能

  • 基本计算:支持加减乘除等常规数学运算。
  • 西格玛、积分与乘积计算:能够处理求和、积分及乘积等高等数学问题。
  • 变量创建与存储:允许用户定义并保存变量,以便在计算过程中重复使用。
  • 函数图像绘制:能够绘制单变量函数的图像,帮助用户直观理解函数的变化趋势。
  • 基数转换:支持不同进制(如二进制、十进制、十六进制)之间的数值转换。
  • 单位换算:能够进行长度、重量、体积等多种物理量单位之间的换算。
  • 关系计算:可解决涉及数学关系表达式的复杂计算问题。

1.3 Calcium使用场景

  • 学生和教育机构可以在课堂上使用Calcium来进行数学计算和表达式求解。它可以帮助学生更好地理解数学问题,并提供实时反馈和结果展示。

  • 金融专业人员可以使用Calcium来进行复杂的金融计算,如贷款计算、投资回报率计算等。它可以帮助他们更快速、准确地做出决策。

  • 软件开发人员可以使用Calcium来进行代码计算,如表达式求值、单位转换、字符串操作等。它可以提供一个便捷的工具,帮助开发人员提高效率和准确性。

  • 普通用户可以使用Calcium来进行日常生活中的计算,如计算器、货币兑换、单位转换等。它可以方便用户进行各种计算,避免了手动计算和查找公式的麻烦。

    二、本地环境介绍

    2.1 本地环境规划

    本次实践为个人测试环境,操作系统版本为centos7.6。

hostname IP地址 操作系统版本 Docker版本
jeven 192.168.3.166 centos 7.6 2 20.10.17

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署Calcium网页计算器。

三、本地环境检查

3.1 检查Docker服务状态

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

[root@jeven ~]# systemctl status docker
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
   Active: active (running) since Tue 2024-02-06 14:02:53 CST; 1 day 23h ago
     Docs: https://docs.docker.com
 Main PID: 11739 (dockerd)
    Tasks: 22
   Memory: 163.9M
   CGroup: /system.slice/docker.service

3.2 检查Docker版本

检查Docker版本

[root@jeven ~]# docker -v
Docker version 20.10.17, build 100c701

3.3 检查docker compose 版本

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

[root@jeven ~]# docker compose version
Docker Compose version v2.6.0

四、下载Calcium镜像

从docker hub拉取Calcium镜像

[root@jeven ~]# docker pull noahhrreion/calcium:main
main: Pulling from noahhrreion/calcium
7264a8db6415: Pull complete
eee371b9ce3f: Pull complete
93b3025fe103: Pull complete
d9059661ce70: Pull complete
42d0ff6ac329: Pull complete
4f4fb700ef54: Pull complete
f4428fea9d01: Pull complete
Digest: sha256:e3aca3d3893294defaf172b56229305b07326667cb0bd8d61d8fce6ca9d33881
Status: Downloaded newer image for noahhrreion/calcium:main
docker.io/noahhrreion/calcium:main

五、部署Calcium

5.1 使用docker-cli创建Calcium容器

使用docker-cli快速部署Calcium容器

docker run -d --name calcium --restart always -p 3000:3000 noahhrreion/calcium:main

5.2 编辑docker-compose.yaml文件

创建部署目录

 mkdir -p /data/calcium && cd /data/calcium/

本次实践使用docker compose方式运行Calcium容器,编辑docker-compose.yaml文件内容如下:

version: '3.8'
services:
  calcium:
    container_name: calcium
    image: noahhrreion/calcium:main
    ports:
      - 6980:3000
    restart: always

5.3 运行Calcium容器

  • 使用docker-compose.yaml文件创建Calcium容器
    [root@jeven calcium]# docker compose up -d
    [+] Running 2/2
    ⠿ Network calcium_default  Created                                                                                                             0.1s
    ⠿ Container calcium        Started                                                                                                             0.8s
    

5.4 检查Calcium容器状态

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

[root@jeven calcium]# docker compose ps
NAME                COMMAND                  SERVICE             STATUS              PORTS
calcium             "/bin/sh -c 'npm run…"   calcium             running             0.0.0.0:6980->3000/tcp, :::6980->3000/tcp

5.5 检查Calcium容器日志

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

[root@jeven calcium]# docker compose logs
calcium  |
calcium  | > calcium@1.4.0 start
calcium  | > node scripts/start.js
calcium  |
calcium  | Starting the development server...
calcium  |
calcium  | Compiled successfully!
calcium  |
calcium  | You can now view calcium in the browser.
calcium  |
calcium  |   Local:            http://localhost:3000
calcium  |   On Your Network:  http://172.28.0.2:3000
calcium  |
calcium  | Note that the development build is not optimized.
calcium  | To create a production build, use npm run build.
calcium  |
calcium  | webpack compiled successfully
calcium  | No issues found.
calcium  | Compiling...
calcium  | Compiled successfully!
calcium  | webpack compiled successfully
calcium  | No issues found.

在这里插入图片描述

六、访问Calcium首页

访问地址:http://192.168.3.166:6980/,将IP替换为自己服务器IP地址,进入到Calcium首页。如果无法访问,则检查服务器防火墙是否设置,云服务器的安全组端口是否放行等。

在这里插入图片描述

  • 二进制计算

在这里插入图片描述

  • 画出函数图像

在这里插入图片描述

  • 辈分计算

在这里插入图片描述

七、总结

Calcium工具的界面简洁明了,所有的计算按钮都一目了然,用户可以很方便地点击按钮进行计算。界面的布局也很合理,以及颜色搭配也很舒适,给人一种清爽的感觉。如果需要扩展本地个人工具库,可以将其添加,提高工作效率。

相关文章
|
4天前
|
运维 网络安全 持续交付
IDEA+Docker 远程一键部署项目:技术干货分享
【10月更文挑战第4天】在现代软件开发中,快速、可靠、自动化的部署流程是提升开发效率和运维质量的关键。IDEA(IntelliJ IDEA)作为Java开发者首选的IDE,结合Docker这一轻量级容器化技术,能够实现远程一键部署项目,极大地简化了开发到生产的流程。今天,我将和大家分享这一组合在工作学习中的实际应用和技术干货。
29 3
|
6天前
|
Kubernetes 持续交付 Docker
利用 Docker 和 Kubernetes 实现微服务部署
【10月更文挑战第2天】利用 Docker 和 Kubernetes 实现微服务部署
|
6天前
|
人工智能 数据安全/隐私保护 虚拟化
Docker部署MaxKB详细步骤(window系统)
这篇文章详细介绍了如何在Windows系统上使用Docker部署MaxKB,并提供了从安装Docker到运行MaxKB容器的详细步骤,以及如何通过浏览器访问和配置MaxKB来使用ollama和llama3模型进行问答。
55 1
Docker部署MaxKB详细步骤(window系统)
|
4天前
|
存储 测试技术 Linux
【Docker项目实战】使用Docker部署Radicale日历和联系人应用
【10月更文挑战第4天】使用Docker部署Radicale日历和联系人应用
19 0
【Docker项目实战】使用Docker部署Radicale日历和联系人应用
|
7天前
|
关系型数据库 MySQL 数据库
使用Docker部署的MySQL数据库,数据表里的中文读取之后变成问号,如何处理?
【10月更文挑战第1天】使用Docker部署的MySQL数据库,数据表里的中文读取之后变成问号,如何处理?
27 3
|
6天前
|
定位技术 文件存储 网络架构
Docker部署PhotoPrism、Immich图片管理应用,无需公网IP远程访问教程
除了Synology、QNAP、TerraMaster等品牌的NAS设备内置图库功能,市面上还有多种备受欢迎的第三方应用,如PhotoPrism、Immich、LibrePhotos、Piwigo、Photoview等。这些应用不仅提供强大的图片管理能力,还可通过Docker轻松部署。借助贝锐花生壳服务,即使没有公网IP也能实现远程访问,突破地理限制,提升数据可访问性和安全性,让用户随时随地管理私人图库。
33 1
|
7天前
|
运维 测试技术 Linux
【Docker项目实战】使用Docker部署lemonitor镜像站点列表程序
【10月更文挑战第1天】使用Docker部署lemonitor镜像站点列表程序
17 0
【Docker项目实战】使用Docker部署lemonitor镜像站点列表程序
|
5天前
|
Kubernetes Cloud Native 流计算
Flink-12 Flink Java 3分钟上手 Kubernetes云原生下的Flink集群 Rancher Stateful Set yaml详细 扩容缩容部署 Docker容器编排
Flink-12 Flink Java 3分钟上手 Kubernetes云原生下的Flink集群 Rancher Stateful Set yaml详细 扩容缩容部署 Docker容器编排
29 0
|
2月前
|
运维 Java Devops
阿里云云效操作报错合集之部署docker时遇到报错,该怎么办
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
|
运维 Kubernetes 前端开发
【云原生】阿里云服务器部署 Docker Swarm集群
阿里云服务器 一键部署 Docker Swarm 集群!
653 0
【云原生】阿里云服务器部署 Docker Swarm集群