file+manager+pro
作者:他们都叫我老宁
前言
有很多小伙伴听说过了Docker,也都用过,其实群晖Container Manager就是基于Docker容器的,群晖只是把做成了一个套件,方便普通用户运行、管理Docker容器,而不需要复杂专业的Docker知识。今天来简单聊聊Docker,读了这篇文章后,一定会对群晖Container Manager有更深的了解和全新的认识
Docker是什么
Docker,在开发人员中耳熟能详,它是一种开源的应用容器引擎,它可以将你的程序和依赖环境一起打包存放,构成一个全功能、独立的个体,并运行在系统上,每个体之间互不影响,也就是常说的docker容器
![](https://p0.ssl.img.360kuai.com/t01ec9992977ff93da8.jpg)
可能有人会问Docker和虚拟机有什么区别?Docker是直接运行在宿主机平台的操作系统层上,并与系统内核直接对话。所以它比虚拟机更轻量级,启动速度也更快,但对于隔离性要求不如虚拟机严格,而虚拟机则是在物理硬件和虚拟的操作系统之间添加了一层虚拟化的平台,所以虚拟机可以运行完全独立的操作系统,但相对的,其复杂性、资源消耗和启动时间都会更大
Docker能干什么
讲了Docker是什么之后,接下来看看它能做什么。Docker可以帮你把想要运行的程序和所有需要的环境打包成一个行李箱,就是常说的Docker容器。可以把这个箱子带到任何地方,无论是哪台电脑还是云端,只要打开这个行李箱,就可以直接运行了,这就是Docker的魔力,"Build once, run anywhere",一次打包,随处运行!
群晖Container Manager和Docker的关系
知道了Docker的概念,再来理解Container Manager就比较简单了,简单来说,群晖的Container Manager就像是Docker的管理者,它可以帮你轻松的查看、管理的所有Docker容器,而不需要去记很多复杂的指令
群晖命令行操作Docker
通过上面的知识知道了群晖Container Manager操作的其实就是Docker,接下来演示下如何在群晖上通过命令行操作Docker
首先需要在控制中心->终端机和SNMP下的终端机选项卡中打开SSH功能,端口保持22不变,点击应用
![](https://p0.ssl.img.360kuai.com/t013efc04b3cf2a30b9.jpg)
在终端中输入ssh 群晖用户名@群晖ip地址,然后输入密码进行登录(如果端口不是22需要使用 -p 来指定端口)
![](https://p0.ssl.img.360kuai.com/t01b57c924f0e2ac0dc.jpg)
接下来需要登录root用户才能执行docker相关命令,输入sudo -i命令后,再输入管理员密码,就能切换为root用户了
![](https://p0.ssl.img.360kuai.com/t01685c96b614920d7c.jpg)
现在就可以指向Docker相关的命令了,例如docker ps,可以看到当前的所有容器
![](https://p0.ssl.img.360kuai.com/t01d51a89852b4520c0.jpg)
docker images命令可以列出所有镜像
![](https://p0.ssl.img.360kuai.com/t01c3a6e68dd6e299b8.jpg)
经常看到类似docker run -d --restart=always -p 12345:12345 -v /opt/FileCodeBox/:/app/data --name filecodebox lanol/filecodebox:beta这样的命令
简单介绍下这行命令,docker run:是Docker启动新容器的基本命令,-d: 表示以"Detached"模式运行容器,也就是运行在后台,--name filecodebox:这个选项为容器指定了名字,即filecodebox
也就是说执行这条命令后,会以后台模式创建运行一个名为filecodebox的新容器,使用lanol/filecodebox:beta镜像,如果容器停止,Docker会自动尝试重启它,容器会使用主机的12345端口,并将主机的/opt/FileCodeBox/目录挂载为容器的/app/data目录
细心的小伙伴可以发现这和Container Manager中运行容器之前设置参数一样,不过使用docker命令来操作docker更为快捷、简单。执行成功后,使用docker ps看到的容器状态和Container Manager运行的容器的状态是一致的
更多的docker命令可以参考https://blog.csdn.net/BThinker/article/details/123355362这篇文章,使用docker命令可以方便的创建和管理docker容器,而省去单独设置映射文件等简单重复的操作
Docker-compose又是什么
你可能想,Docker已经很方便了,还有什么呢?答案是:Docker-compose。Docker Compose是一个Docker官方编排的工具,主要用于定义和管理多个Docker容器,在docker-compose.yml中编排好指令,只需通过一个命令,就可以创建并启动所有的服务
如果只是单单的启动一个容器,可能没有什么感觉,但要同时启动多个容器,并且它们之间有依赖关系,Docker-compose的优势就体现出来了,比如下面的docker-compose.yml文件,分别要启动web-server、imageproxy-server、backend-server等服务
![](https://p0.ssl.img.360kuai.com/t0107ee6755ae4705d4.jpg)
启动单个容器也可以使用docker-compose,比如前面的docker命令,改造为docker-compose.yml文件如下
![](https://p0.ssl.img.360kuai.com/t01c79de02acf337e24.jpg)
运行也很简单,只需在docker-compose.yml文件的同级目录输入docker-compose up -d命令,就能在后台运行容器了,更多的命令可以查看https://www.jianshu.com/p/c51d92a9f91d这篇文章
后记
通过这篇文章,相信大家对docker容器有了一个简单的认识。docker技术被广泛应用于软件开发上,对于普通用户,学会简单的使用就能满足日常需求了,如果还是觉得有点复杂,那么强大且友好的群晖Container Manager将会是你的理想选择!
查看文章精彩评论,请前往什么值得买进行阅读互动
","gnid":"960f973e308c825f6","img_data":[{"flag":2,"img":[{"desc":"","height":963,"title":"","url":"https://p0.ssl.img.360kuai.com/t01f5ed973c176b2342.jpg","width":1080},{"desc":"","height":"438","title":"","url":"https://p0.ssl.img.360kuai.com/t013efc04b3cf2a30b9.jpg","width":"1080"},{"desc":"","height":"110","title":"","url":"https://p0.ssl.img.360kuai.com/t01b57c924f0e2ac0dc.jpg","width":"938"},{"desc":"","height":"128","title":"","url":"https://p0.ssl.img.360kuai.com/t01685c96b614920d7c.jpg","width":"512"},{"desc":"","height":"778","title":"","url":"https://p0.ssl.img.360kuai.com/t01d51a89852b4520c0.jpg","width":"1080"},{"desc":"","height":"302","title":"","url":"https://p0.ssl.img.360kuai.com/t01c3a6e68dd6e299b8.jpg","width":"660"},{"desc":"","height":"1436","title":"","url":"https://p0.ssl.img.360kuai.com/t0107ee6755ae4705d4.jpg","width":"1080"},{"desc":"","height":"418","title":"","url":"https://p0.ssl.img.360kuai.com/t01c79de02acf337e24.jpg","width":"650"}]}],"original":0,"pat":"art_src_1,fts0,sts0","powerby":"pika","pub_time":1703903573000,"pure":"","rawurl":"http://zm.news.so.com/10647b41b5b8d7e2b48951cfbf99aa7f","redirect":0,"rptid":"c3787c77f20fea9e","rss_ext":[],"s":"t","src":"什么值得买","tag":[],"title":"群晖小白系列 篇二十:群晖Container Manager到Docker容器技术
董家兴1601file extension manager是什么
解兴俗13946438913 ______ 文件扩展名管理工具,可以方便的更改文件的后缀,更改某后缀对应的应用程序. 是一个老外的软件
董家兴1601.com.fihtdc.filemanager是什么文件?占内存很大 -
解兴俗13946438913 ______ 安卓软件“文件管理器”生成的临时文件
董家兴1601Windows中命令文件的几种执行方法 -
解兴俗13946438913 ______ DOS操作系统命令文件的执行通常是在系统提示符后键入文件名(文件应在PATH指定的路径中).作为多任务操作平台Windows中命令文件的执行可有多种方法,下面简述常用的几种. #2 1.在DOS命令行执行 进入Windows时键入:WIN+命...
董家兴1601file manager gold怎么用 -
解兴俗13946438913 ______ File Manager Gold中是最方便的文件管理器Windows的.有了这个应用程序,你可以用文件真的很舒服的工作!- 便捷的搜索所有的设备上的文件,包括搜索内部档案的;- 与档案理想的工作;- 使用文件串行和并行操作的可能性:复制,移动,删除,归档和拆包档案;- 查看文件操作的历史.获得完美的助理文件操作!随着新File Manager Gold 中与您的文件的任何行动 - 这是快速,方便和乐趣!
董家兴1601java文件管理器编程
解兴俗13946438913 ______ /** * @(#)FileManager.java * * FileManager application * * @author * @version 1.00 2011/11/28 */import java.io.*;import java.util.*; public class FileManager { public static void main(String[] args) { if(args.length>=1&&args[0]!=null&&args[1]!=null) ...
董家兴1601编辑器插件KindEditor的设置fileManagerJson是什么意思 -
解兴俗13946438913 ______ 貌似是图片空间的管理 将原来编辑器里的php处理方法移植到自己想要的地方 比如fileController 修改URL就好. 不过编辑器默认不需要管理功能,屏蔽了.
董家兴1601FTP File Manager 如何创建文件夹
解兴俗13946438913 ______ 找到了,在域名管理里面,点击subdomain就会新建一个
董家兴1601控制面板打开File manager怎么这么慢? -
解兴俗13946438913 ______ godaddy的file manager国内有些地区确实打开有点慢,你用袋里打开试试.
董家兴1601android filemanager 怎么读取sdcard 文件 -
解兴俗13946438913 ______ 用路径的方法寻找,BitmapFactory.decodeFile(路径)返回值是一个Bitmap,比如sdcard的根目录有个test.png,那么可以这么用BitmapFactory.decodeFile("mnt/sdcard/test.png").然后ImageView之类的图片控件,可以用setImageBitmap(Bitmap)之类的...