docker【3】docker镜像容器安装

Docker镜像构建与容器运行

前面文章中已经介绍过docker环境安装。这里具体讲解一下docker 的镜像构建,以及容器的运行;

之前讲到过,docker 有一个repository,所有的人都可以往上面发布镜像以及下载别人发布的镜像;

1、搜索镜像

    打开 docker hub ,在右上角有搜索框可以搜自己想要的镜像;比如 ubuntu ,whalesay 等,根据自己的需要进行搜索;官网上以whalesay为例子;

2、选择安装镜像

  • 根据官网demo 选择 docker/whaleasy 浏览器会打开这个镜像的仓库,下面还会有ubuntu15.10镜像的介绍。

    镜像仓库包含了该镜像的相关信息如它包含了什么软件、如何运行它。或许你已经注意到了,Whalesay是基于Ubuntu的linux分发版本,接下来的步骤将会引导你在你的机器上运行Whalesay;

使用下面命令,出现下列信息证明成功;

 
  1. $ sudo docker run docker/whalesay cowsay boo

    Unable to find image 'docker/whalesay:latest' locally latest: Pulling from docker/whalesay 2880a3395ede: Pull complete 515565c29c94: Pull complete 98b15185dba7: Pull complete 2ce633e3e9c9: Pull complete 35217eff2e30: Pull complete 326bddfde6c0: Pull complete 3a2e7fe79da7: Pull complete 517de05c9075: Pull complete 8f17e9411cf6: Pull complete ded5e192a685: Pull complete Digest: sha256:178598e51a26abbc958b8a2e48825c90bc22e641de3d31e18aaf55f3258ba93b Status: Downloaded newer image for docker/whalesay:latest _____ < boo > -----    \     \      \                        ##        .                          ## ## ##       ==                       ## ## ## ##      ===                   /""""""""""""""""___/ ===          ~~~ {~~ ~~~~ ~~~ ~~~~ ~~ ~ /  ===- ~~~         \______ o          __/                    \    \        __/                      \____\______/  

当运行这个命令的时候,docker会先在本地查找他,若不存在,则会从docker hub上下载;

到此 官网的Whalesay 安装完成。

  • Ubuntu15.10的镜像

这里自己需要一个ubuntu15.10的镜像,从docker hub 获取:

 
  1. $ sudo docker pull ubuntu:15.10

    15.10: Pulling from library/ubuntu d0fa00decafb: Pull complete 392844978dc9: Pull complete a3a0dd44a4bb: Pull complete 2804d41e7f10: Pull complete Digest: sha256:ae24faeb7d968197008eb7fa6970d1aa90636963947fe3486af27b079cccfb17 Status: Downloaded newer image for ubuntu:15.10

显示上述信息说明ubuntu15.10镜像安装完成;


附:查看本地镜像命令:

 
  1. $ sudo docker images

    REPOSITORY       TAG      IMAGE ID      CREATED       VIRTUAL SIZE ubuntu           12.04    673a64f026f0  5 days ago   137 MB hello-world      latest   0a6ba66e537a  8 weeks ago  960 B docker/whalesay  latest   ded5e192a685  6months ago  247 MB myjob1           latest   764c656f5fc5  5 hours ago  133.5 MB ubuntu           15.10    2804d41e7f10  6 days ago   133.5 MB

3、启动容器

我们可以起一个linux的容器,来进行我们的安装部署,我需要在ubuntu15.10的镜像上启动我需要的容器 myubuntu:

使用如下命令,然后进入容器,进行自己的操作:

 
  1. $ sudo docker run -ti --name myubuntu ubuntu:15.10

容器启动,具体信息如下,通过ls 可以查看目录,进行下一步需要的操作,比如应用程序的部署等:

 
  1. lin@lin166:~$ sudo docker run -ti --name myubuntu ubuntu:15.10
  2. root@f5480a8ba103:/# ls
  3. bin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
  4. root@f5480a8ba103:/#

注意:

每次 使用docker命令都需要使用sudo

这里把当前用户加入到docker组就可以直接使用命令,而不用每次都加sudo

 
  1. $ sudo groupadd docker

#改完后需要重新登陆用户

  1. $ sudo gpasswd -a ${USER} docker

4、修改已有镜像,发布成为自己需要的镜像

 注意:需要使用上面创建的容器的ID;

  • 先使用下载的镜像启动容器:

 
  1. lin@ubuntu:~$ docker run -t -i myjob1 /bin/bash
  2. root@b5b89b89919a:/#
  • 在容器中添加jdk;

 
  1. root@b5b89b89919a:/# apt-get install openjdk-7-jdk
  • 提交容器

 
  1. lin@ubuntu:~$ docker commit -m "Added jdk" -a "Docker Newbee" b5b89b89919a ubuntu15.10:v2

    c72878b77cf5d19d64c9e3b53ca9ab69ebdaaac51c6f75bae4e596b7e89cb3da

    其中 -m 类似一个版本记录,告诉自己添加了什么东西,-a 指定更新的用户信息 之后是用来创建镜像的容器的 ID;最后指定目标镜像的仓库名和 tag 信息。创建成功后会返回这个镜像的 ID 信息。

然后查看docker images 就会发现多了 ubuntu15.10   v2  的镜像

然后我们就可以直接使用这个含有jdk 的镜像,当然大家可以根据自己的需要安装自己需要的公用的东西;





<think>好的,用户需要寻找适合科研绘图软件推荐。首先,我需要回想一下用户提供的参考引用内容,看看有没有相关的软件被提到。在引用[2]中提到了VTK(Visualization Toolkit),这是一个开源的用于处理和显示科学数据的软件,具有先进的3D渲染工具和2D绘图能力。另外,引用[3]提到了GeoPy,主要用于地理编码和地理数据获取,可能和绘图有关联,但可能不是主要的绘图工具。引用[1]讨论了科学图像的标准,强调信息和可读性优先于美观,这可能影响到软件的选择标准。 接下来,用户的问题是关于科研绘图的,所以需要推荐那些在学术界广泛使用、功能强且符合科学绘图标准的软件。除了引用中提到的VTK,我还需要补充其他常见的科研绘图工具。比如Python的Matplotlib和Seaborn,这两个库在数据可视化中非常流行,适合生成高质量的2D图表。R语言的ggplot2也是一个强的选择,特别适合统计绘图。Origin和SigmaPlot是商业软件,提供丰富的绘图选项和数据分析功能,适合需要复杂图表的研究人员。ParaView和VisIt适用于规模科学数据的可视化,尤其是3D和体数据。Inkscape和Adobe Illustrator虽然主要是矢量图形编辑工具,但常被用来对生成的图表进行后期美化,符合引用[1]中提到的调整现有图像的需求。 还要考虑用户可能的使用场景:是否需要处理量数据、生成2D还是3D图表、是否需要开源或免费软件等。例如,如果用户需要高度定制化的图表,Matplotlib和ggplot2可能更合适;如果需要交互式3D可视化,ParaView或VTK更好。同时,引用[1]提到要注意图像的版权问题,因此使用开源工具或确保商业软件的合法授权也很重要。 用户可能需要免费或开源的解决方案,所以需要区分商业和免费软件。例如,Python和R的相关库都是免费的,而Origin、SigmaPlot、Adobe Illustrator是商业软件。此外,结合引用[2]中的VTK架构,可以强调其在3D渲染和科学数据处理的优势。引用[3]的GeoPy可能在地理相关的绘图中有所帮助,但可能不是主要工具。 最后,根据用户的问题生成相关问题,比如如何选择适合自己领域的软件,或者如何优化图表的信息传达,这有助于用户进一步探索。同时,确保回答结构清晰,分点推荐软件,每个软件的特点和适用场景明确,符合用户要求的“结构清晰,逐步解决问题”。</think>### 科研绘图软件推荐 在科研中,选择合适的绘图软件需兼顾数据可视化精度、可重复性、以及符合学术规范。以下是几类常用工具及其适用场景: --- #### 1. **编程类工具(适合定制化与可重复性)** - **Python + Matplotlib/Seaborn** 适合生成高质量的2D图表(如折线图、散点图、热图),支持LaTeX公式渲染。代码驱动,便于批量处理和复现[^2]。 ```python import matplotlib.pyplot as plt plt.plot([1,2,3], [4,5,6], label='示例') plt.xlabel('X轴', fontsize=12) plt.ylabel('Y轴', fontsize=12) plt.legend() plt.show() ``` - **R + ggplot2** 专注于统计绘图,语法简洁,适合生成复杂的多图层图形(如箱线图、密度图)[^4]。 --- #### 2. **交互式可视化工具(适合3D与数据)** - **ParaView** 基于VTK开发,支持规模科学数据的3D渲染(如流体动力学、医学成像),提供直观的交互界面。 - **VisIt** 适用于超规模数据集的可视化(如气候模拟、粒子追踪),支持并行计算。 --- #### 3. **专业科研绘图软件(适合快速出图)** - **OriginLab** 提供丰富的模板和数据分析工具(如傅里叶变换、峰值拟合),适合实验数据的快速可视化[^1]。 - **SigmaPlot** 强调统计分析功能(如非线性回归、ANOVA),图表风格符合期刊要求。 --- #### 4. **矢量图形编辑工具(适合后期优化)** - **Inkscape(开源)** 用于调整图表细节(如字体、箭头样式),支持SVG格式导出。 - **Adobe Illustrator** 商业软件,适合复杂图形的合成与美化,但需注意版权问题。 --- #### 5. **地理与空间数据工具** - **QGIS** 开源地理信息系统,支持地图制作与空间数据分析,可与GeoPy结合处理坐标数据[^3]。 - **GMT (Generic Mapping Tools)** 命令行工具,适合出版级地图和地形渲染。 --- ### 选择建议 - **优先信息清晰度**:避免过度设计,确保图表能直接传达核心结论。 - **跨平台兼容性**:优先支持脚本化(如Python/R)或开放格式(如TIFF/SVG)的工具。 - **领域适配性**:如材料科学常用CrystalMaker,生物信息学多用BioVenn。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值