【Docker项目实战】使用Docker部署instantbox临时Linux系统环境搭建工具

简介: 【6月更文挑战第13天】使用Docker部署instantbox临时Linux系统环境搭建工具

一、instantbox介绍

1.1 instantbox简介

InstantBox 项目借助浏览器内即时访问技术,让用户能够即刻获得临时性的Linux系统环境,无需下载安装,在任何浏览器中即可实现对Linux系统的开发与探索。

1.2 instantbox使用场景

  • 提供一个干净的Linux环境,让学生或参与者能够无需担心系统冲突或配置问题,专注于学习和实践。
  • 在学校或聚会中提供Linux体验,让更多人了解Linux的优势和使用方式。
  • 提供清洁的环境,让参与者能够在跑步机上运动时得到灵感,思考和解决问题。
  • 管理各种设备的服务器,可以轻松监控和控制设备,提高效率和安全性。
  • 开展开源项目实验,让参与者能够学习和贡献开源项目,提升技能并与其他开发者互动。
  • 在资源有限的环境下测试软件性能,帮助开发者优化代码和提高程序效率。

二、本地环境介绍

2.1 本地环境规划

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

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

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署instantbox工具。

三、本地环境检查

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 Sat 2024-04-20 22:54:02 CST; 4 days ago
     Docs: https://docs.docker.com
 Main PID: 11385 (dockerd)
    Tasks: 9
   Memory: 124.5M
   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

四、下载instantbox镜像

从docker hub拉取instantbox相关容器镜像

docker pull  instantbox/instantbox:latest
docker pull instantbox/instantbox-frontend:latest
docker pull  instantbox/cron:latest

在这里插入图片描述

五、部署instantbox

5.1 创建部署目录

创建部署目录/data/instantbox

mkdir -p /data/instantbox  && cd /data/instantbox

5.2 编辑部署文件

本次实践部署使用docker compose方式,编辑docker-compose.yaml部署文件。注意将SERVERURL变量替换为自己服务器IP地址。

version: '3'

services:
  server:
    image: instantbox/instantbox:latest
    container_name: instantbox_server
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    environment:
      - SERVERURL=192.168.3.166
    networks:
      - instantbox_net

  frontend:
    image: instantbox/instantbox-frontend:latest
    container_name: instantbox_frontend
    links:
      - server
    ports:
      - 9888:80
    networks:
      - instantbox_net

  cron:
    image: instantbox/cron:latest
    container_name: instantbox_cron
    links:
      - frontend
    environment:
      - CRON_STRINGS=* * * * * wget -qO /dev/null http://frontend/api/v2/superinspire/prune
    networks:
      - instantbox_net

networks:
  instantbox_net:

5.3 创建instantbox容器

使用 docker compose up -d命令,快速部署instantbox应用。

  docker compose up -d

在这里插入图片描述

5.4 检查instantbox容器状态

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

[root@jeven instantbox]# docker compose ps
NAME                  COMMAND                  SERVICE             STATUS              PORTS
instantbox_cron       "/docker-entry.sh /d…"   cron                running
instantbox_frontend   "nginx -g 'daemon of…"   frontend            running             0.0.0.0:9888->80/tcp, :::9888->80/tcp
instantbox_server     "/usr/bin/python3.5 …"   server              running             65501/tcp

5.7 检查instantbox容器日志

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

docker compose logs

在这里插入图片描述

六、访问instantbox首页

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

在这里插入图片描述

七、安装临时操作系统

7.1 选择操作系统

在instantbox首页上,选择需要安装操作系统,这里选择ubuntu 20.04版本。

在这里插入图片描述

7.2 系统配置

这里可以选择系统的内部端口,cpu和内存规格等,自定义填写即可。

在这里插入图片描述

7.3 访问临时操作系统

点击“Launch webshell”,进入临时操作系统的命令行界面。
在这里插入图片描述

八、总结

InstantBox是一个利用浏览器内即时访问技术,让用户能够即刻获得临时性的Linux系统环境的项目。它可以在任何支持浏览器的设备上使用,无需下载安装。通过创建Linux系统的容器,并定期删除,InstantBox实现了在网页上快速创建临时操作系统的功能。

相关文章
|
7月前
|
应用服务中间件 网络安全 nginx
手把手教你使用 Docker 部署 Nginx 教程
本文详解Nginx核心功能与Docker部署优势,涵盖镜像拉取、容器化部署(快速、挂载、Compose)、HTTPS配置及常见问题处理,助力高效搭建稳定Web服务。
3352 4
|
7月前
|
应用服务中间件 Linux nginx
在虚拟机Docker环境下部署Nginx的步骤。
以上就是在Docker环境下部署Nginx的步骤。需要注意,Docker和Nginix都有很多高级用法和细节需要掌握,以上只是一个基础入门级别的教程。如果你想要更深入地学习和使用它们,请参考官方文档或者其他专业书籍。
357 5
|
7月前
|
存储 NoSQL Redis
手把手教你用 Docker 部署 Redis
Redis是高性能内存数据库,支持多种数据结构,适用于缓存、消息队列等场景。本文介绍如何通过Docker快速拉取轩辕镜像并部署Redis,涵盖快速启动、持久化存储及docker-compose配置,助力开发者高效搭建稳定服务。
2319 8
|
NoSQL Shell Linux
arm-linux-gdb+gdbserver环境搭建以及远程调试
0) gdb源码下载:http://ftp.gnu.org/gnu/gdb/ 1) 编译arm-linux-gdb     指定交叉编译工具链的位置     export PATH=$PATH:/usr/local/arm/3.
2274 0
|
8月前
|
Linux 应用服务中间件 Shell
二、Linux文本处理与文件操作核心命令
熟悉了Linux的基本“行走”后,就该拿起真正的“工具”干活了。用grep这个“放大镜”在文件里搜索内容,用find这个“探测器”在系统中寻找文件,再用tar把东西打包带走。最关键的是要学会使用管道符|,它像一条流水线,能把这些命令串联起来,让简单工具组合出强大的功能,比如 ps -ef | grep 'nginx' 就能快速找出nginx进程。
912 1
二、Linux文本处理与文件操作核心命令
|
8月前
|
Linux
linux命令—stat
`stat` 是 Linux 系统中用于查看文件或文件系统详细状态信息的命令。相比 `ls -l`,它提供更全面的信息,包括文件大小、权限、所有者、时间戳(最后访问、修改、状态变更时间)、inode 号、设备信息等。其常用选项包括 `-f` 查看文件系统状态、`-t` 以简洁格式输出、`-L` 跟踪符号链接,以及 `-c` 或 `--format` 自定义输出格式。通过这些选项,用户可以灵活获取所需信息,适用于系统调试、权限检查、磁盘管理等场景。
525 137
|
8月前
|
安全 Ubuntu Unix
一、初识 Linux 与基本命令
玩转Linux命令行,就像探索一座新城市。首先要熟悉它的“地图”,也就是/根目录下/etc(放配置)、/home(住家)这些核心区域。然后掌握几个“生存口令”:用ls看周围,cd去别处,mkdir建新房,cp/mv搬东西,再用cat或tail看文件内容。最后,别忘了随时按Tab键,它能帮你自动补全命令和路径,是提高效率的第一神器。
1407 58
|
7月前
|
存储 安全 Linux
Linux卡在emergency mode怎么办?xfs_repair 命令轻松解决
Linux虚拟机遇紧急模式?别慌!多因磁盘挂载失败。本文教你通过日志定位问题,用`xfs_repair`等工具修复文件系统,三步快速恢复。掌握查日志、修磁盘、验重启,轻松应对紧急模式,保障系统稳定运行。
1274 2
|
8月前
|
Unix Linux 程序员
Linux文本搜索工具grep命令使用指南
以上就是对Linux环境下强大工具 `grep` 的基础到进阶功能介绍。它不仅能够执行简单文字查询任务还能够处理复杂文字处理任务,并且支持强大而灵活地正则表达规范来增加查询精度与效率。无论您是程序员、数据分析师还是系统管理员,在日常工作中熟练运用该命令都将极大提升您处理和分析数据效率。
670 16