[授权发表]基于 Docker 快速构建 Linux 0.11 实验环境
来源:互联网 发布:直销双轨制表格软件 编辑:程序博客网 时间:2024/05/21 16:09
by Falcon of TinyLab.org
2015/05/02
最初发表:泰晓科技 – 聚焦嵌入式 Linux,追本溯源,见微知著!
原文链接:基于 Docker 快速构建 Linux 0.11 实验环境
评论说明:为更好地聚合大家的讨论,请到上面原文的评论区回复。
简介
五分钟内搭建 Linux 0.11 的实验环境介绍了如何快速构建一个 Linux 0.11 实验环境。
本文介绍如何快速构建一个独立于宿主机的 Linux 0.11 实验环境,该实验环境可以用于任何操作系统的宿主开发机,将非常方便各类学生学习 Linux 0.11,本文只介绍 Ubuntu。在 Windows 和 Mac 下可以用 VirtualBox + Boot2Docker 来启动。
下文要求已经安装 git 和 docker,如果没有安装请首先安装:
安装 git
$ sudo apt-get install git
安装 docker
$ sudo apt-get install software-properties-common # 增加 add-apt-repository 命令$ sudo apt-get install python-software-properties $ sudo add-apt-repository ppa:dotcloud/lxc-docker # 增加一个ppa源,如:ppa:user/ppa-name$ sudo apt-get -y update$ sudo apt-get install lxc-docker
拉下 Linux 0.11 实验环境
$ git clone https://gitlab.com/tinylab/linux-0.11.git
通过 Docker 构建一个独立的实验环境
$ cd linux-0.11$ docker build -t tinylab/linux-0.11-lab ./
启动装有实验环境的 Docker 容器
$ CONTAINER_ID=$(docker run -d -p 6080:6080 dorowu/ubuntu-desktop-lxde-vnc)
获得实验环境的密码
$ docker logs $CONTAINER_ID | sed -n 1p User: ubuntu Pass: ubuntu
注:登录密码为 Pass
之后的字符串,这里为 ubuntu
。
远程登录实验环境
- 在本地宿主机登录
- http://localhost:6080/vnc.html
远程登录
获得实验环境所属容器的 IP 地址
$ docker exec $CONTAINER_ID ifconfig eth0 | grep "inet addr:"inet addr:172.17.0.1 Bcast:0.0.0.0 Mask:255.255.0.0
访问地址:
http://172.17.0.1:6080/vnc.html
简单使用
登录后,无须再额外安装任何工具,因为刚才在构建 Docker 容器时就已经默认安装好。所以用法与 五分钟内搭建 Linux 0.11 的实验环境 稍有差异。基本步骤如下:
- 登录后,通过左下角的启动菜单,找到
Accessories
,再打开控制台LXTerminal
- 进入实验环境所属目录:
cd /linux-0.11-lab
- 进行各种开发与调试动作
- 例如:
make start-hd
- 也可切换 bochs 启动,例如:
echo bochs > tools/vm.cfg; make start-fd
- 例如:
- 更多用法请参考:
make help
效果如下:
0 0
- [授权发表]基于 Docker 快速构建 Linux 0.11 实验环境
- 【转】基于 Docker/Qemu 快速构建 Linux 内核实验环境
- [授权发表]基于 ssh + Xpra 构建 Docker 桌面系统
- [授权发表]基于 VNCServer + noVNC 构建 Docker 桌面系统
- [授权发表]Docker 快速上手:用 Docker + GitBook 写书
- [授权发表]如何快速定位 Linux Panic 出错的代码行
- [授权发表]Linux内核Section Mismatch详解
- [授权发表]用 kGDB 调试 Linux 内核
- [授权发表]内核探索:Linux BogoMips 探秘
- [授权发表]Linux 段错误详解
- 使用docker快速构建rails开发环境
- Docker快速构建开发调试环境
- [授权发表]为可执行文件“减肥”
- 基于docker ceph环境快速搭建体验
- [授权发表]源码分析:动态分析 Linux 内核函数调用关系
- [授权发表]为什么计算机的学生要学习 Linux 开源技术
- 结合docker 快速的构建 Cassandra开发环境
- 如何利用docker快速构建MySQL主从复制环境
- c++设计模式之装饰模式
- Git 常用命令整理
- 日常哪些食物最容易伤胃!大家看看平时可以注意下哦!
- linux上ln命令详细说明
- C语言中的static 详细分析
- [授权发表]基于 Docker 快速构建 Linux 0.11 实验环境
- 115个Java面试题和答案——终极列表(上)
- 黑马程序员——多线程
- 判断回文数组
- hadoop 配置项的调优
- 在MySQL中设置外键约束
- C/C++32位程序移植到64位操作系统(转)
- 01 HBase基本概念和hbase shell常用命令用法
- HBase性能优化方法总结(1):配置优化