SwiftPerfect-Ubuntuサーバーの展開

image.png

前書き###

[ Perfect](https://www.perfect.org/)は、Linux、iOS、およびMacOS(OS X)用の完全で強力なツールボックス、フレームワーク、およびアプリケーションサーバーです。これは、Swiftエンジニアが、クライアント側およびサーバー側アプリケーション用のSwiftプログラミング言語用の軽量で保守可能で拡張可能なアプリケーションおよびその他のRESTサービスを開発するために必要なすべてを提供します。
次のいくつかの記事では、Perfectフレームワークを記録します。興味のある人は見ることができます:
[ Swift Perfect-Ubuntuサーバーの展開](https://www.jianshu.com/p/be9f09e09d8f)[SwiftPerfect-Qiniuアップロードファイル](https://www.jianshu.com/p/4e0a0eb77ea3)[SwiftPerfect-APN認証コードを取得するためのiOSメッセージプッシュ(APN)] (https://www.jianshu.com/p/3058d80761e8)[Swift Perfect-systemdコマンドサーバープロジェクトを使用してバックグラウンドで実行](https://www.jianshu.com/p/d5e7fc5be2fb)[Ubuntu環境でのNginxのインストールと展開](https://www.jianshu.com/p/9abab01f0ea8)[SwiftPerfect-Nginx configure HTTPSサーバー](https://www.jianshu.com/p/b6a3fb212adf)

個人的な例#####

以下は私がPerfectを使って書いたものです(あなたを助けることができるものがあれば、私はそれが好きになることを願っています、そしてところで、私はGitHubでそれが好きです)
Github:https://github.com/LeeCenY/iRent

開発環境 バージョン
Swift 3.0.2
Perfect 2.0
Ubuntu 16.04

最初のタイプ:スクリプトを使用してインストール(推奨)####

[https://github.com/PerfectlySoft/Perfect-Ubuntu](https://github.com/PerfectlySoft/Perfect-Ubuntu)を使用して、SwiftとPerfectをデプロイします

2番目のタイプ:手動インストール####

[ Swiftのインストール](https://swift.org/download/#snapshots)バージョン3.0 ####を選択することをお勧めします

apt-get update

sudo apt-get install clang libicu-dev

image.png

gpg --keyserver hkp://pool.sks-keyservers.net \
  - - recv-keys \
  '7463 A81A 4B2E EA1B 551F  FBCF D441 C977 412B 37AD' \
  '1 BE1 E29A 084C B305 F397  D62A 9F59 7F4D 21A5 6D5F' \
  ' A3BA FD35 56A5 9079 C068  94BD 63BC 1CFE 91D3 06C6'
wget -q -O - https://swift.org/keys/all-keys.asc | \
 gpg --import-

wget https://swift.org/builds/swift-3.0.2-release/ubuntu1604/swift-3.0.2-RELEASE/swift-3.0.2-RELEASE-ubuntu16.04.tar.gz

tar xzf swift-3.0.2-RELEASE-ubuntu16.04.tar.gz

mv swift-3.0.2-RELEASE-ubuntu16.04 swift

echo "export PATH=/root/swift/usr/bin:"${PATH}"" >> ~/.bashrc
source ~/.bashrc

Swift version 3.0.2 (swift-3.0.2-RELEASE)
Target: x86_64-unknown-linux-gnu

Ubuntuの展開####

sudo apt-get install git

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

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

cd PerfectTemplate

swift build

. build/debug/PerfectTemplate

[ INFO] Starting HTTP server localhost on 0.0.0.0:8181

迅速なビルドプロセスで発生する可能性のある問題#####
 ln -s /usr/include/libmongoc-1.0/ libmongoc-1.0
 または
 ln -s /usr/include/libmongoc-1.0/usr/local/include/libmongoc-1.0
. Package(url:"https://github.com/SwiftORM/MongoDB-Storm.git", majorVersion:1),.Package(url:"https://github.com/PerfectlySoft/Perfect-RequestLogger.git", majorVersion:1),

依存関係の更新:
swift package update
swift build

迅速なパッケージ更新更新の依存関係
迅速なビルドはクイックパッケージを構築します
swift build -creleaseクイックリリースコードをビルドする
swift package generate-xcodeprojswiftコードからXcodeプロジェクトを作成または更新します
すべての依存関係を取得するための迅速なパッケージ解決

image.png

image.png

Swift and Perfect ###をすばやくインストールする

https://github.com/PerfectlySoft/Perfect-Ubuntu

Perfect StORM(SQLデータベース間の関係)を使用したネストされたオブジェクトの例###

https://github.com/iamjono/NestedObjectsExample

尾###

Ubuntuの展開には、「始めてからあきらめるまで」という落とし穴がたくさんありますが、結局、[Slack](http://perfect.ly/)で[Perfect-Ubuntu](https://github.com/PerfectlySoft/Perfect-Ubuntu)を偶然見ました。もう一度やり直したいと思いました。 Vaporの使用を開始します...」(Vaporは正常にデプロイされ、ピットが少なくなりました)、そして最後にこの[Perfect-Ubuntu](https://github.com/PerfectlySoft/Perfect-Ubuntu)がデータベースの問題を解決しました。

教材:
[ パーフェクト公式ウェブサイト](http://perfect.org/)[UbuntuにデプロイされたSwift / Perfect](https://www.jianshu.com/p/ae96107ec1ae)[パーフェクトネットワークフレームワークアプリケーション-基本的な方法、MySQL接続およびCppコードアクセス](https://www.jianshu.com/p/bdc56771d13a)[Perfectに基づくSwiftサーバー開発](https://www.jianshu.com/p/3c01574dafc4)[フルスタックSwifter:まず、完璧なフレームワーク](https://www.jianshu.com/p/0b65d5fc7065)

Recommended Posts

SwiftPerfect-Ubuntuサーバーの展開
CentOSサーバー展開(YUM)
CentOS7.6サーバー展開VNC
Centos7のインストールとgitlabサーバーの展開