Docker是什么?
Docker是世界领先的软件容器平台。Docker使用Google公司推出的Go语言进行开发实现,基于Linux内核的cgroup,namespace,以及AUFS类的UnionFS等技术,对进程进行封装隔离,属于操作系统层面的虚拟化技术。 由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器,但docker本身并不是容器,它是创建容器的工具,是应用容器引擎。
Docke最初实现是基于LXC。LXC为Linux Container的简写。可以提供轻量级的虚拟化,以便隔离进程和资源,而且不需要提供指令解释机制以及全虚拟化的其他复杂性。相当于C++中的NameSpace。容器有效地将由单个操作系统管理的资源划分到孤立的组中,以更好地在孤立的组之间平衡有冲突的资源使用需求。
docker并不是LXC替代品,docker底层使用了LXC来实现,LXC将linux进程沙盒化,使得进程之间相互隔离,并且能够课哦内阁制各进程的资源分配。在LXC的基础之上,docker提供了一系列更强大的功能。
Docker能够自动执行重复性任务,例如搭建和配置开发环境,从而解放了开发人员以便他们专注在真正重要的事情上:构建杰出的软件。
用户可以方便地创建和使用容器,把自己的应用放入容器。容器还可以进行版本管理、复制、分享、修改,就像管理普通的代码一样。
docker的三个概念:
镜像(Image):类似于虚拟机中的镜像,是一个包含有文件系统的面向Docker引擎的只读模板。任何应用程序运行都需要环境,而镜像就是用来提供这种运行环境的。例如一个Ubuntu镜像就是一个包含Ubuntu操作系统环境的模板,同理在该镜像上装上Apache软件,就可以称为Apache镜像。
容器(Container):类似于一个轻量级的沙盒,可以将其看作一个极简的Linux系统环境(包括root权限、进程空间、用户空间和网络空间等),以及运行在其中的应用程序。Docker引擎利用容器来运行、隔离各个应用。容器是镜像创建的应用实例,可以创建、启动、停止、删除容器,各个容器之间是是相互隔离的,互不影响。注意:镜像本身是只读的,容器从镜像启动时,Docker在镜像的上层创建一个可写层,镜像本身不变。
仓库(Repository):类似于代码仓库,这里是镜像仓库,是Docker用来集中存放镜像文件的地方。注意与注册服务器(Registry)的区别:注册服务器是存放仓库的地方,一般会有多个仓库;而仓库是存放镜像的地方,一般每个仓库存放一类镜像,每个镜像利用tag进行区分,比如Ubuntu仓库存放有多个版本(1204、1404等)的Ubuntu镜像。
docker的用途:
官方给的是bulid ship run,就是编译、装载、运行。就是实现了应用的封装、部署、运行的生命周期管理只要在glibc的环境下,都可以运行。
谐云自主研发的容器云平台,是基于Docker和Kubernetes技术构建的一套完整IT标准化和自动化框架,以“面向终态、优化IT资源”为目标的新一代PaaS平台,能够提高企业的IT管理能力,在降低运营成本和风险的同时,获得更高的运维效率,保障业务稳定运行和高效迭代。
如果你的swarm运行在默认端口,那么你就可能和我一样遇到了VXLAN默认端口4789/udp被云服务厂商阻断的问题。比如阿里云在文档中提到了这点,链接-> 阿里云添加udp监听文档 。
这个问题在docker:v1903之前无法直接解决。1903版本,docker在swarm init之上增加了--data-path-port uint32 的配置项用于更改docker swarm的VXLAN端口。
下面以指定端口5789/udp为例
如何使用和访问阿里云ECS服务器
Ecs服务器设置云的安全设置主要包括以下几个重要方面:
1首先是服务器的用户管理,很多攻击和破解,首先是系统的远程登录。毕竟获得登录用户后,就可以进入系统进行操作了,所以首先要做的就是禁止root超级用户的远程登录。
2将ssh的默认端口更改为其他不常用的端口。你可能不知道,我们的服务器其实每天都在被很多扫描工具扫描,尤其是针对Linux服务器默认的ssh端口。扫描22端口后,扫描工具可能会尝试破解并登录。修改ssh的默认端口可以降低被扫描和暴力登录的概率。此外,还可以使用fail2ban等程序防止ssh被暴力破解。原理是在多次登录尝试失败后,该IP被禁止登录。
3SSH改为用密钥登录,不用担心暴力破解,因为对方拿不到你的密钥,比密码登录安全多了。
4请务必定期检查和升级您的网站程序和相关组件,并及时修复那些已知的主要漏洞。网上也有很多爬虫机器人每天扫描各种网站,试图寻找系统漏洞。即使你做好了服务器用户权限管理和登录保护,网站程序还是有可能被黑客入侵。
5另外,如果云服务器上运行多个网站系统(博客企业官网)。我推荐使用docker容器隔离运行环境,将每个程序放在单独的容器中运行,这样即使服务器上的某个网站程序被破解入侵,也会被禁锢在被入侵的容器中,不会影响其他容器或者系统本身。具体信息可以在阿里云上查到。
买了阿里云的服务器还需要备案吗?
选择国内的服务器肯定要备案的,个人备案和企业备案都可以。如果不想备案可以选择阿里云海外服务器,用海外服务器的话国内访问肯定速度会慢一些。
阿里云后台怎么找到刚购买的服务器?
登陆阿里云后台,点击控制台,左上角点击阿里云logo会呈现一个搜索功能,搜索服务器就可以
公司给了我阿里云服务器的账户、密码、IP地址,请问我要怎么使用?
远程链接啊电脑上不都有个远程桌面的程序嘛输入IP然后会自动链接按要求输入账户和密码即可如果服务器是linux系统的就用putty链接服务器。也有可能给你的是FTP帐号密码你是用FTP上传工具就可以上传的。
阿里云esc服务器怎么使用?
阿里云esc服务器的使用方法如下:
1、购买了,先登录到阿里云服务器控制台
2、点击顶部的“控制台”
3、通过左侧栏,切换到“云服务器ECS”即可登录进去,
通过ECS控制台的远程连接来登录到云服务器
阿里云ECS云服务器自带远程连接功能,使用该功能可以登录到云服务器,简单且方便,
在国内访问 Docker 官方的镜像,一直以来速度都慢如蜗牛。为了快速访问 Docker 官方镜像都会配置三方加速器,目前常用三方加速器有: 网易 、 USTC 、 DaoCloud 、 阿里云 。
现在 Docker 官方针对中国区推出了镜像加速服务。通过 Docker 官方镜像加速,国内用户能够以更快的下载速度和更强的稳定性访问最流行的 Docker 镜像。
如何使用官方镜像
Docker 中国官方镜像加速可通过 registrydocker-cncom 访问。目前该镜像库只包含流行的公有镜像,而私有镜像仍需要从美国镜像库中拉取。
您可以使用以下命令直接从该镜像加速地址进行拉取。
$ docker pull registrydocker-cncom/myname/myrepo:mytag
例如:
$ docker pull registrydocker-cncom/library/ubuntu:1604
注:除非您修改了Docker守护进程的–registry-mirror参数,否则您将需要完整地指定官方镜像的名称。例如,library/ubuntu、library/redis、library/nginx。
给Docker守护进程配置加速器
如果要配置 Docker 守护进程默认使用 Docker 官方镜像加速。您可以在 Docker 守护进程启动时配置 --registry-mirror 参数。
通过命令行启动Docker
$ docker --registry-mirror=https://registrydocker-cncom daemon
通过配置文件启动Docker
Docker 版本在 112 或更高
修改 /etc/docker/daemonjson 文件并添加上 registry-mirrors 键值。
$ vim /etc/docker/daemonjson { "registry-mirrors": ["https://registrydocker-cncom"]}
Docker版本在 18 与 111 之间
您可以找到 Docker 配置文件,在配置文件中的 DOCKER_OPTS 加入。不同的 Linux 发行版的配置路径不同,这里以 Ubuntu 为例。
a) Ubuntu 1404版本
修改 /etc/default/docker 文件,加入如下参数。
$ vim /etc/default/docker DOCKER_OPTS="--registry-mirror=https://registrydocker-cncom"
b) Ubuntu 1504以后版本
Ubuntu 1504 之后默认使用了 Systemd 管理服务,加速器配置方式稍有些不同。在 Systemd 服务文件中加入启动参数。
$ vim /lib/systemd/system/dockerservice [Service] ExecStart=/usr/bin/docker -d -H fd:// --registry-mirror=https://registrydocker-cncom
修改保存后,重启 Docker 以使配置生效。
$ service docker restart
给Docker守护进程配置加速器后,就可以默认通过官方镜像加速拉取镜像,而无需在每次拉取时指定 registrydocker-cncom 。
步骤如下:
1安装DOCKER
在云服务器上安装DOCKER,简单一点的可以先安装宝塔面板,在宝塔面板市场里搜索DOCKER,这个几个docker管理器都可以用,关于如何安装宝塔可以自行百度一下,一天命令,非常简单。
2部署moon服务
安装dockerzerotier-moon服务打开宝塔终端工具,输入命令dockerpullseedgou/zerotier-moon,在docker上部署zerotier服务dockerrun--namezerotier-moon-d--restartalways-p9993:9993/udp-v/home/zerotier-moon:/var/lib/zerotier-oneseedgou/zerotier-moon-410001。运行之后可以在docker面板里看到正常运行的moondocker服务。
注意:在宝塔面板安全里开放9993端口,如果是腾讯云或者其他云服务器记得在防火墙里开放9993端口服务。把刚刚挂载的目录里自动生成moonsd文件夹下载到本地备用
3配置win客户端
Windows客户端加入moon自建节点将moonsd文件夹整个复制到ZeroTier安装目录下默认路径为:C:ProgramFiles(x86)ZeroTierOne,打开WindowsPowershell,输入命令zerotier-cliorbitxxxxxxxxxxxxxxxxxxxx,将xxxxxxxxxx替换为你的moonid,在服务器终端面板里运行下面命令查看moonid,dockerlogszerotier-moon,WindowsPowershell显示提示200orbitok表示添加moon节点成功此后重启zerotier,完毕。
4测试服务
查看是否成功加入moon服务器节点,查看节点信息命令zerotier-clilistpeers,当你看到某一行后面带有moon字样,就证明已经加入到moon自建节点中其中PLANET为官方的根服务器。
0条评论