接老板任务,最近参加了Docker的培训,逐渐认识到在不久将来软件行业可真要变天呢,云端取代实物实物充分共享。培训是关于综合地球物理联合反演与解释一体化平台建设,听名字就知道要把,,,联合在同一解释平台,主要用于找金属矿,即还要与地质挂钩;即使在同一专业,老板们惯用的处理数据,绘图等软件就会不一致,现在国家重点项目下要实现不同研究方向,不同操作系统间的数据共享与紧密联系,是有点复杂呢。但是,我们有Docker

1. What is docker?

Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。[菜鸟docker网站] read more.

Docker 属于 Linux 容器的一种封装,提供简单易用的容器使用接口。它是目前最流行的 Linux 容器解决方案。Docker 将应用程序与该程序的依赖,打包在一个文件里面。运行这个文件,就会生成一个虚拟容器。程序在这个虚拟容器里运行,就好像在真实的物理机上运行一样。有了 Docker,就不用担心环境问题。总体来说,Docker 的接口相当简单,用户可以方便地创建和使用容器,把自己的应用放入容器。容器还可以进行版本管理、复制、分享、修改,就像管理普通的代码一样。[阮一峰的网络日志] read more.

Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机)、bare metal、OpenStack 集群和其他的基础应用平台。[Docker 中文社区] read more.

以及Docker与虚拟机的区别


Docker 的应用前景和优点在上述扩展链接里讲述地很详细,安装教程也有很多。接下来主要分享下我在日常生活中会用到 docker 的地方,属于对它的一些很小级别的应用:

2. 科学上网

利用 docker 科学上网的核心步骤是: 购买资本主义服务器 -> ssh 登录,进入服务器 -> 在服务器中安装docker -> docker 安装运行shadowsocks 镜像 -> 电脑、手机端安装客户端shadowsocks -> 最后科学上网。

这样做的好处是docker 容器避免了麻烦的 shadowsocks 类软件的安装及配置过程。只需要从Github 上 pull 已有的 docker-shadowsocks 镜像,然后 run。这两条命令就可以在 docker 容器里实现配置。

可用到的 docker 命令:

拉取镜像:
$ sudo docker pull oddrationale/docker-shadowsocks

查看镜像:
$ sudo docker images

运行:
$ sudo docker run -d -p 2018:1996 oddrationale/docker-shadowsocks -s 0.0.0.0 -p 1996 -k woaiqiangge -m aes-256-cfb

-d 允许 docker 常驻后台运行
-p 来指定要映射的端口,自由设置。2018为 vps 端口, 1996为本地端口
-s 0.0.0.0 或者 127.0.0.1
-k 设置你的 VPN 的密码
-m 指定加密方式 aes-256-cfb

查看运行状态:
$ sudo docker ps -a
如若看到 oddrationale/docker-shadowsocks 行状态(status)为 `up xx seconds`。证明已经运行。

更完善内容见: https://qiangyao.blog/post/VPN_shadowsocks/

3. Windows下运行Linux

待续…

4. 环境部署

待续…