容器:Ubuntu 16.04安装Docker Compose详解

by admin on 2020年2月9日

PhpStorm 2019.3 EAP build 193.4778.21 公布了,此版本最大的优点是引进了对
WSL 的扶持。

上大器晚成篇:编程入门17:Python遇到管理

什么是Docker Compose

WSL
是用以在 Windows 10 上运维 Linux 二进制可实行文件的宽容层,PhpStorm
以后支撑在 WSL 境况中支付。开荒者将能够在 WSL 中钦赐多个远道 PHP
解释器,并将其用来周转脚本、测量试验、Composer 命令和调治将养。

所谓“临蓐条件”是指应用程序正式上线运营所用的软硬件意况,多为设置了Linux操作系统的高质量计算机,聚集停放在专项使用机房中,通过互连网远程访问。开拓者平时还大概会铺排一个“模拟临蓐条件”来举行发表前的测量检验——Linux能够在实体机上安装,也足以在别的操作系统管理的设想机上设置(比方Win10自带的设想机工具Hyper-V),但最便捷的章程则是开荒Win10的微软应用公司直接设置——这种Linux是根据“适用于Linux的Windows子系统”(Windows
Subsystem for Linux,简单的称呼WSL),运转比设想机更加快,性能也越来越好。

Docker
Compose是运转多容器Docker应用程序的工具。要运用Compose配置应用程序的服务,大家运用布署文件,然后实践单个命令,能够创造并运转配置中钦赐的具有服务。

更新表达中牵线了实际使用操作:

这几天就让我们运用WSL来创立一个模仿临蓐条件,在Win10带头菜单中式点心击“Windows系统”>“调控面板”>“程序”>“启用或关闭Windows功效”,在档案的次连串表中勾选“适用于Linux的Windows子系统”,点击“分明”相提并论启操作系统。步向微软行使公司找出“Linux”就能够找到八个Linux发行版,它们看起来风格各异,但都施用同风度翩翩的Linux内核——推荐您安装Ubuntu,对新手来讲越发协和。

Docker
Compose适用于广大不及的项目,如:

先是,确定保证已在 Windows 10 中设置了 WSL,并精选了 Linux 发行版。

图片 118_linux.png

  • 支付:使用Compose命令行工具,大家创制(并相互)叁个孤立的情形,那将承袭正在开荒的应用程序。
  • 经过应用Compose文件,开拓职员将记录并布署全体应用程序的劳务正视关系。
  • 自动测验:此用例要求周转测量试验的遭遇。Compose提供了黄金年代种便利的艺术来管理测量试验套件的隔绝测量检验情状。完整的情状在Compose文件中定义。
  • Docker Compose是在Fig
    配置文件中开创的,这几个社区等级次序今后未曾接收。

基于发行版的差异,或然早已预装了
PHP。若无,则必需通过命令行手动安装。举例,在 Ubuntu
中,能够运作以下命令:

第三回开发银行Ubuntu终端须要花点时间安装组件,随后要输入顾客名和密码来创立三个账号,接下去就能够呈现命令提示符“$”等待你输入指令:

在本教程中,大家将看到怎样在Ubuntu
16.04机械上设置Docker Compose。

sudo apt update

$ cat /etc/issue # 显示发行版本,例如Ubuntu 18.04.1$ uname -a # 显示内核版本,例如Linux 4.4.0$ pwd # 显示当前路径$ cd / # 切换目录路径$ ls # 列出目录内容$ df -h # 显示文件系统$ python3 # 运行Python3解释器

安装Docker

sudo apt install php php-mbstring php-dom php-xml php-zip php-curl
php-xdebug

图片 218_shell.png

为了设置Docker
Compose,大家供给Docker。首先,为法定Docker存款和储蓄库增添公钥:

WSL 意况中装置了 PHP 后就可以起来配备 PhpStorm 了:

你可以看出Ubuntu已经自带了Python3.6.5解释器(注意对应命令为python3,在Linux中python命令暗中认可指Python2)。与Windows不一致,Linux的文件系统使用正斜杠作为路线分隔符,全部路线都是根目录“/”为起点组成树形构造,举例leo顾客目录路线为“/home/leo”,输入时方可按TAB键自动补全命令和路子。注意:即便要求改动客商目录以外的东西,举例进行系统布署和软件安装,请在指令前增加“sudo”即以种类客户地点运营——Ubuntu使用apt命令管理软件包,大家率先要做的事是纠正apt源列表文件:

$ curl -fsSL | sudo apt-key
add-

在 File | Settings | Languages & Frameworks | PHP 下添加 CLI
解释器

$ sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak$ sudo vim /etc/apt/sources.list

接下去,将Docker存款和储蓄库增加到apt源列表中:

图片 3

如上命令先对apt源列表文件做复制备份,再用文件编辑器vim张开。请先输入“:%d”清空内容,再按“i”步入插入形式,复制以下文本并在窗口中右击粘贴,设置从当中华次大陆的镜像源下载软件包:

$ sudo add-apt-repository “deb
[arch=amd64] $(lsb_release
-cs) stable”

尽管在这里对话框中平昔不看见 WSL
选项,则象征还不曾安装 WSL,供给检讨前边的手续。

deb http://mirrors.cloud.tencent.com/ubuntu/ bionic main restricteddeb http://mirrors.cloud.tencent.com/ubuntu/ bionic-updates main restricteddeb http://mirrors.cloud.tencent.com/ubuntu/ bionic universedeb http://mirrors.cloud.tencent.com/ubuntu/ bionic-updates universedeb http://mirrors.cloud.tencent.com/ubuntu/ bionic multiversedeb http://mirrors.cloud.tencent.com/ubuntu/ bionic-updates multiverse#deb http://mirrors.cloud.tencent.com/ubuntu/ bionic-backports main restricted universe multiversedeb http://mirrors.cloud.tencent.com/ubuntu/ bionic-security main restricted universe multiverse

履新数据库包,使用用apt安装Docker:

图片 4

按“ESC”退出插入情势,再输入“:wq”保存并脱离,接下去就足以推行apt命令更新和安装Ubuntu软件包了:

$ sudo apt-get update
$ sudo apt install docker-ce

将见到已设置的 WSL
发行版列表,并且可以根据供给加上大肆数量的解释器。

$ sudo apt update # 更新软件包列表$ sudo apt list --upgradable # 查看哪些软件包可更新$ sudo apt upgrade python3.6 # 更新Python3.6,不指定名字则更新全部软件包$ sudo apt install python3-pip # 安装Pyhon3.6的pip$ python3 -m pip list # 查看Python3.6的第三方包列表$ sudo apt install python3.7 # 安装Python3.7$ sudo apt install python3.7-venv # 安装Python3.7的venv$ python3.7 -m venv vTest # 基于Python3.7创建一个虚拟环境$ source vTest/bin/activate # 激活一个虚拟环境

在设置进度甘休时,Docker守护程序应该运行,以便在引导时加载。
大家能够动用以下命令检查其场合:

之后能够钦赐此解释器运维测量试验、Composer
或其余运营配置。

如上命令把Python3.6.5立异到3.6.6,并安装了Python3.7.0。你能够看出Ubuntu把Python分成四个模块,举个例子pip和venv都以须求十一分安装的——其余也要记得改革Python软件包的镜像源,Ubuntu下的布署文件是/etc/pip.conf。

$ sudo systemctl status docker
---------------------------------

● docker.service - Docker Application Container Engine
 Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
 Active: active (running) 

图片 5

上面包车型大巴示范程序在极端中输出彩色文本,这种语法是Unix或Linux特有的:

安装Docker Compose

当时可以安装Docker Compose。 通超过实际行以下命令下载当前版本:

# curl -L https://github.com/docker/compose/releases/download/1.14.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

删去推行权限:

# chmod +x /usr/local/bin/docker-compose

检查Docker Compose版本:

$ docker-compose -v

输出应该是如此的:

docker-compose version 1.14.0, build c7bdf9e

图片 6

"""xtextcolor.py 在*nix终端中输出彩色文本(使用第三方包colorama也可以在Windows中实现此效果)"""# from colorama import init# init()print("33[1;30m灰色文本33[0m")print("33[1;31m红色文本33[0m")print("33[1;32m绿色文本33[0m")print("33[1;33m黄色文本33[0m")print("33[1;34m蓝色文本33[0m")print("33[1;35m品红色文本33[0m")print("33[1;36m青色文本33[0m")print("33[1;37m白色文本33[0m")print("33[1;37;40m白色文本黑色背景33[0m")print("33[1;36;41m青色文本红色背景33[0m")print("33[1;35;42m品红色文本绿色背景33[0m")print("33[1;34;43m蓝色文本黄色背景33[0m")print("33[1;33;44m黄色文本蓝色背景33[0m")print("33[1;32;45m绿色文本品红色背景33[0m")print("33[1;31;46m红色文本青色背景33[0m")print("33[1;30;47m灰色文本灰色背景33[0m")

测试 Docker Compose

Docker Hub包含用于演示的Hello World镜像,表明了应用Docker
Compose运营容器所需的布置。

制造三个新的目录并跻身它:

$ mkdir hello-world
$ cd hello-world

创制二个新的YAML文件:

$ $EDITOR docker-compose.yml

在这里文件中粘贴以下内容:

unixmen-compose-test:
 image: hello-world

注意:第黄金年代行用作容器名称的黄金时代有个别。

封存并退出。

此外此版本还应该有针对 PHP 的修补与 WebStorm、DataGrip 团队以致 英特尔liJ
平台的最新更新。详细情形查看:

接下去大家演练通过互联网访谈Linux主机,那亟需在Ubuntu上配置SSH服务:

运维容器 接下来,在hello-world目录中实行以下命令:

$ sudo docker-compose up

即便整个正确,那应该是Compose所显示的出口:

 

Pulling unixmen-compose-test (hello-world:latest)...
latest: Pulling from library/hello-world
b04784fba78d: Pull complete
Digest: sha256:f3b3b28a45160805bb16542c9531888519430e9e6d6ffc09d72261b0d26ff74f
Status: Downloaded newer image for hello-world:latest
Creating helloworld_unixmen-compose-test_1 ... 
Creating helloworld_unixmen-compose-test_1 ... done
Attaching to helloworld_unixmen-compose-test_1
unixmen-compose-test_1 | 
unixmen-compose-test_1 | Hello from Docker!
unixmen-compose-test_1 | This message shows that your installation appears to be working correctly.
unixmen-compose-test_1 | 
unixmen-compose-test_1 | To generate this message, Docker took the following steps:
unixmen-compose-test_1 | 1. The Docker client contacted the Docker daemon.
unixmen-compose-test_1 | 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
unixmen-compose-test_1 | 3. The Docker daemon created a new container from that image which runs the
unixmen-compose-test_1 | executable that produces the output you are currently reading.
unixmen-compose-test_1 | 4. The Docker daemon streamed that output to the Docker client, which sent it
unixmen-compose-test_1 | to your terminal.
unixmen-compose-test_1 | 
unixmen-compose-test_1 | To try something more ambitious, you can run an Ubuntu container with:
unixmen-compose-test_1 | $ docker run -it ubuntu bash
unixmen-compose-test_1 | 
unixmen-compose-test_1 | Share images, automate workflows, and more with a free Docker ID:
unixmen-compose-test_1 | https://cloud.docker.com/
unixmen-compose-test_1 | 
unixmen-compose-test_1 | For more examples and ideas, visit:
unixmen-compose-test_1 | https://docs.docker.com/engine/userguide/
unixmen-compose-test_1 | 
helloworld_unixmen-compose-test_1 exited with code 0

只要命令处于活动状态,Docker容器就能够运营,由此当测量检验成功运维时,容器将告风流罗曼蒂克段落。

总结

正文介绍了有关在Ubuntu 16.04机械上安装Docker
Compose的学科。
大家还观望了什么样通过YAML格式的Compose文件创造叁个轻便易行的体系。

越来越多Docker相关教程见以下内容

Docker安装应用(CentOS
6.5_x64)
http://www.linuxidc.com/Linux/2014-07/104595.htm

Ubuntu 16.04 服务器上配置利用 Docker 
http://www.linuxidc.com/Linux/2017-06/145176.htm

Ubuntu 15.04下安装Docker 
http://www.linuxidc.com/Linux/2015-07/120444.htm

Docker 安装实例
http://www.linuxidc.com/Linux/2017-04/142666.htm

Docker 创造底蕴镜像 
http://www.linuxidc.com/Linux/2017-05/144112.htm

在 Ubuntu 15.04 上什么样设置Docker及中央用法
http://www.linuxidc.com/Linux/2015-09/122885.htm

Ubuntu 16.04上Docker使用手记
http://www.linuxidc.com/Linux/2016-12/138490.htm

使用Docker分分钟开发银行常用应用 
http://www.linuxidc.com/Linux/2017-04/142649.htm

Ubuntu 16.04下Docker修改配置文件不奏效消除办法 
http://www.linuxidc.com/Linux/2017-05/143862.htm 

Docker
的详实介绍
:请点这里
Docker
的下载地址
:请点这里

正文长久更新链接地址:http://www.linuxidc.com/Linux/2017-07/145555.htm

图片 7

https://blog.jetbrains.com/phpstorm/2019/10/phpstorm-2019-3-eap-7

$ sudo /usr/bin/ssh-keygen -A # 生成主机密钥$ sudo vim /etc/ssh/sshd_config # 编辑SSH服务配置

将安顿文件中的PasswordAuthentication改为yes,允许利用密码登入(默许只同意密钥文件),然后运营SSH服务:

$ sudo service ssh start

几这段日子开荒Windows命令提示符输入以下命令,作为钦赐顾客登陆钦命IP地址的主机(“127.0.0.1”是个针对本机的独特IP地址):

ssh leo@127.0.0.1

你也足以安装别的更标准的SSH客商端,比方PuTTY和Bitvise SSH Client
SSH
Client登入Ubuntu运维示例程序的作用如下:

图片 818_ssh.png

WSL是个好东西,但是只适用于上学和测量试验。倘诺您想要真正的生产条件,依旧得有本人的机房,只怕去买现存的云主机。

——编制程序原本是这么……

Linux系统也得以设置桌面情况,就算WSL的终端窗口不援救图形分界面,不过足以因此远程桌面服务来选用——推荐桌面意况Xfce,那据书上说是Linux的创设者Linus
Torvalds本身的接受哦:

$ sudo apt install xfce4 xrdp fonts-wqy-microhei

Xfce差相当的少要侵吞600MB空间,相对于GNOME和KDE等别的桌面情形来讲算是一定精致轻易。下载安装完结后需求编制远程桌面服务配置文件/etc/xrdp/xrdp.ini,将默许端口3389改为13389,免得WSL和Windows的远程桌面服务相互冲突。然后施行以下命令运维远程桌面服务:

$ echo "xfce4-session" > ~/.xsession$ sudo service xrdp start

这段时间就足以使用远程桌面客户端比如Win10自带的mstsc连接127.0.0.1:13389,登陆到Xfce桌面蒙受了:

图片 918_xfce.png

在桌面情形中也能够张开终端窗口实施命令,比方设置Firefox浏览器:

$ sudo apt install firefox

事后你也足以采取在实业机上安装Linux作为平时大将系统,推荐Xubuntu——正是合而为一了Xfce桌面景况的Ubuntu

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图