Swift编程

Swift/Perfect部署到Ubuntu上[destroy]

2016-11-14  本文已影响2375人  一梭蕉

PS本文章已某应用意义-
本人最近写了篇文章 希望点到这篇文章的直接查看(http://www.jianshu.com/p/e6c6abfa5bb1)[http://www.jianshu.com/p/e6c6abfa5bb1]
其中有关于perfect 的部署的问题

通过Perfect部署到ubuntu14:04上

1.通过手动部署
2.通过Docker

方法1:通过手动部署

$ apt-get update

$ sudo apt-get install clang libicu-dev

$wget -q -O - https://swift.org/keys/all-keys.asc | gpg --import -

输出Good Signature from .... 表示OK,如果输出以下结果,也没关系。
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.

$ swift-DEVELOPMENT-SNAPSHOT-2016-11-01-a-ubuntu14.04.tar.gz

$ mv swift-DEVELOPMENT-SNAPSHOT-2016-11-01-a-ubuntu14.04 swift

echo "export PATH=/root/swift/usr/bin:\"\${PATH}\"" >> ~/.bashrc
source ~/.bashrc
  Welcome to Swift version 3.0-dev (LLVM f54fa77021, Clang 0e6c928036, Swift e013370b37). Type :help for assistance. 

接着我们下载Perfect

git clone https://github.com/PerfectlySoft/PerfectTemplate.git`

sudo apt-get install openssl libssl-dev uuid-dev

cd PerfectTemplate`

swift build`

.build/debug/PerfectTemplate`

到这里服务器算是完成了
** 常见问题文章后面会提及到 **
~待续

方法2:通过Docker镜像部署(推荐

部署swift环境时会遇到各种问题,关键是如果迁移别的服务器上一切又要重新来过这里推荐用Docker的方式去部署我们的Perfect框架,后面会讲到如何通过Docker持续部署我们的代码

本文不会重点提及Docker用法但在文章的末尾会提供Docker的相关教程哈~

Docker介绍:
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

apt install docker.io

docker pull mubin/perfect

docker images

REPOSITORY             TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
mubin/perfect          2.0                 2928a454c8a2        2 hours ago         1.124 GB 

ps:(这里的IMAGE ID是随机生成的)

docker run -i -t -p 8000:8181 --name=XXX 2928a454c8a2

黑体斜体字是你的imageId
-p 8000:8181 的意思是将容器的端口号8181映射到服务器的8000端口上

cd ~

cd PerfectTemplate

swift build

./.build/debug/PerfectTemplate

就会看到下面的字样 返回一个ip 地址

[INFO] Starting HTTP server on 0.0.0.0:8181 with document root ./ webroot

此时我们可以通过**control + P 然后 control + Q **让一个容器后台运行,且退出容器操作界面

这是我们可以curl 0.0.0.0:8000(被映射的端口号)

curl 0.0.0.0:8000
输出
<html><title>Hello, world!</title><body>Hello, world!</body></html>
成功~

Docker 教程:https://pan.baidu.com/s/1kVwf9Yn
提取码:7n4c
待续~~

上一篇 下一篇

猜你喜欢

热点阅读