美文网首页Swift编程
Swift/Perfect部署到Ubuntu上[destroy]

Swift/Perfect部署到Ubuntu上[destroy]

作者: 一梭蕉 | 来源:发表于2016-11-14 01:29 被阅读2375次

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

    通过Perfect部署到ubuntu14:04上

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

    方法1:通过手动部署

    • 你需要一个ubuntu系统
      可以通过官网下载ubuntu镜像 有服务器版和桌面版下面为以命令行的方式为主(桌面版可以通过alt+control+F1切换至终端模式)

    • 更新apt-get包管理工具

    $ apt-get update

    • 下载swift环境需要的编译器clang 和 软件包libicu-dev

    $ sudo apt-get install clang libicu-dev

    • 下载swift版本选择对应ubuntu的版本号和对应的数字签名

    • 导入PGP Keys

    $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

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

    • 将解压的文件改名为swift(可选)

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

    • 把swift加入到环境变量。(swift为刚刚改名的文件夹)
    echo "export PATH=/root/swift/usr/bin:\"\${PATH}\"" >> ~/.bashrc
    source ~/.bashrc
    
    • 输入 swift 或者 swift --version即可打印相关字样,表示swift环境设置成功
      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`

    • 安装PerfectTempalte所需的库(在Ubuntu Linux操作系统和14.04 15.10环境完美的运行。完美依赖于OpenSSL的,的libssl-dev的,和UUID-dev)

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

    • 打开下载完的PerfectTemplate文件夹

    cd PerfectTemplate`

    • 编译

    swift build`

    • 运行

    .build/debug/PerfectTemplate`

    • 编译成功会返回此类似信息

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

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

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

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

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

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

    • 安装docker

    apt install docker.io

    • 拉取我制作好的的镜像(该镜像已经搭建好swift环境和Perfect框架了)

    docker pull mubin/perfect

    • 查看镜像的ID

    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 ~

    • 然后打开 PerfectTemplate

    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
    待续~~

    相关文章

      网友评论

        本文标题:Swift/Perfect部署到Ubuntu上[destroy]

        本文链接:https://www.haomeiwen.com/subject/opthpttx.html