【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实现了在网页上快速创建临时操作系统的功能。

相关文章
|
3天前
|
JSON JavaScript 开发者
Composerize神器:自动化转换Docker运行命令至Compose配置,简化容器部署流程
【8月更文挑战第7天】Composerize神器:自动化转换Docker运行命令至Compose配置,简化容器部署流程
Composerize神器:自动化转换Docker运行命令至Compose配置,简化容器部署流程
|
1天前
|
Linux Shell
Linux系统
是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心,与之前的DOS命令类似。linux命令在系统中有两种类型:内置Shell命令和Linux命令。
|
23小时前
|
运维 Java Devops
阿里云云效操作报错合集之部署docker时遇到报错,该怎么办
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
|
2天前
|
网络协议 Ubuntu Linux
会Linux系统上配IPv6地址的网工,那真是老6了!
会Linux系统上配IPv6地址的网工,那真是老6了!
|
3天前
|
Java Nacos Docker
"揭秘!Docker部署Seata遇上Nacos,注册成功却报错?这些坑你不得不防!一网打尽解决秘籍,让你的分布式事务稳如老狗!"
【8月更文挑战第15天】在微服务架构中,Nacos搭配Seata确保数据一致性时,Docker部署Seata后可能出现客户端连接错误,如“can not connect to services-server”。此问题多由网络配置不当、配置文件错误或版本不兼容引起。解决策略包括:调整Docker网络设置确保可达性;检查并修正`file.conf`和`registry.conf`中的Nacos地址和端口;验证Seata与Nacos版本兼容性;修改配置后重启服务;参考官方文档和最佳实践进行配置。通过这些步骤,能有效排除故障,保障服务稳定运行。
13 0
|
Java 测试技术 Docker
让Docker日臻完善的8个优秀工具
一眨眼,你可能错过如今Docker领域最值得关注的动向之一。除了Docker本身的进步外,其他许多实用的项目都建立在Docker的基础上,或者得到Docker的支持。
1263 0
|
8天前
|
Docker 容器
Docker cp 将宿主机上的文件复制到容器中
Docker cp 将宿主机上的文件复制到容器中
10 0
|
23小时前
|
网络协议 Linux 网络安全
遇到Docker容器网络隔断?揭秘六种超级实用解决方案,轻松让Docker容器畅游互联网!
【8月更文挑战第18天】Docker容器内网络不通是开发者常遇问题,可能因网络配置错、Docker服务异常或防火墙阻碍等原因引起。本文提供六种解决策略:确认Docker服务运行状态、重启Docker服务、检查与自定义Docker网络设置、验证宿主机网络连接、临时禁用宿主机IPv6及检查防火墙规则。通过这些步骤,多数网络问题可得以解决,确保容器正常联网。
6 1
|
2天前
|
安全 Ubuntu Docker
深度挖掘Docker 容器
【8月更文挑战第16天】Docker容器间的连接是容器化技术的关键,支持容器与宿主机的数据交换。主要方法包括:1) 利用Docker网络驱动创建自定义网络,使容器相连通信;2) 采用Docker Compose通过配置文件简化多容器应用的部署与互联;3) 虽不推荐,早期使用--link参数实现容器互联;4) 通过环境变量配置连接信息;5) 共享卷支持文件共享和间接通信。推荐使用Docker网络和Docker Compose以实现高效灵活的容器间通信。
13 3
|
3天前
|
Ubuntu Linux Docker
使用Docker进行容器化:从零开始的技术博文
【8月更文挑战第16天】从零开始掌握Docker容器化技术:本文详细介绍Docker基本概念、安装配置流程及核心组件。涵盖Docker镜像与容器管理、镜像加速配置,以及如何利用Dockerfile自动化构建镜像,助您快速入门并高效运用Docker进行软件开发与部署。