際際滷

際際滷Share a Scribd company logo
Azure と
Elixir/Phoeni
x で
ダウンロ`ドサイ
ト恬ってみた
栽揖氏芙嶄臭室冩
徭失B初
? 栽揖氏芙嶄臭室冩
? 嶄臭レ歴
? 麼に鞭_k/_k屶址
? I婢譯AI/XR/Web/iOS/Android/Windows
? よく聞う冱ZSwift/Typescript
? Elixirには Web XR の宛周で竃氏った。
恬ったもの
http://40.81.2017.148:4000
? C嬬匯E
? ファイルアップロ`ド
? ファイル匯E
? ファイルダウンロ`ド
システム更撹
システム更撹: ちなみにこうでもよかった
Web API の盾hは護曖
とりあえずこんな湖じで httpアクセスしてファイルのやり函りするAPIを恬
撹
ファイル匯E函誼
curl -i --location --request GET https://elixir-downloadsite-
functions.azurewebsites.net/api/list_files?code=xxxxxxxxxxxxxxxxx==`
ファイルアップロ`ド
curl -i --location --request PUT https://elixir-downloadsite-
functions.azurewebsites.net/api/file_upload?fileName=sample.txt'&code='xxxxxxx' --
data-binary `@sample.txt'
ファイルダウンロ`ドStorage Account のURL岷澣き
https://elixirdownloadsite.blob.core.windows.net/assets/{ファイル兆}
g廾返
1. Azure VMを秀てて、SSH俊A
2. Elixirh廠のB
3. Phoenix 秘して、Hello World 議な鮫中を燕幣
4. HTTPアクセスやJSONフォ`マット狼のライブラリを弖紗
5. コ`ドをシして、光NC嬬をg廾
6. g佩
返1~3: 鵬
? Qiita には枠繁のれた岑{があった
? Azure VMにElixirh廠B@t-yamanashi(ymn) さん
? https://qiita.com/t-yamanashi/items/3ec2c675931548e66a53
Elixir/Phoenix のh廠B?糠鯉恬りが匯鵬スクリプト
ymn-t-Yamanashi さんに搾く湖xしながら、參和のコマンドを澣く
$ git clone http://github.com/t-yamanashi/install
$ cd install/elixir_asdf_install
$ sh asdf.sh
$ source ~/.bashrc
$ sh elixir20.sh
$ sh phxinstall.sh
$ cd {挫きな侭}
$ mix phx.new downloadsite --no-ecto
$ cd downloadsite
$ vi config/dev.exs ? アクセス崙囮を1佩シ
$ mix phx.server ? 軟
Elixir/Phoenix h廠B
Phoenix のアプリケ`ション軟
Azure VM の翌何アドレスを_JしてWebブラウザ
アクセスすると。。。
Phoenix の
殆海併中が
れました
で、ここからファイル砿尖C嬬のg廾
? シしたのは、おそらく參和の5ファイル
? mix.exs´ ライブラリ砿尖
? config/config.exs´ こんふぃぐ
? lib/downloadsite_web/templates/page/index.html.heex´View
? lib/downloadsite_web/controllers/page_controller.ex´ ロジック
? lib/downloadsite_web/router.ex´ ル`ティング
ライブラリ
を弖紗
タ`ミナルで $ mix deps.get
ライブラリQ賀tesla
3つセットってことですね
router のg廾
ファイル匯E
page_controller.ex : ファイルの匯E函誼
index.html.heex ファイル匯E燕幣何
ちなみにこれ澣いたらダウンロ`ド
ファイルアップロ`ド
index.html.heex: view
- :upload_form: フォ`ムデ`タのル`トキ`。このキ`の和にフォ`ムデ`タがまとめら
れる。おQまりの燕F
- Routes.page_path(@conn, :upload): フォ`ムの僕佚枠URLを峺協。ここでは、
PageControllerのuploadアクションに僕佚される。
- multipart: true は、ファイルを根むフォ`ムデ`タを僕佚するために駅勣
- fn f -> %>: フォ`ムの嶄附を協xする停兆v方。txtとcsv侘塀にgっている
page_controller.ex: ファイルアップロ`ド
Formのデ`タがこういう夛悶で
栖るらしい
g佩コマンド:
mix phx.server
湖
? 仟rでSしい
? パイプで、い任い湖じはTれるとSしいかも
? ChatGPTとのやり函りで畠隼g廾できる
? Elixirの晩云のコミュニティはYあったまっているかも
? 牽から瓩鮓个犬襦。。
? まだよくわかってない徭蛍がいる
? ファイルアップロ`ドのパラメ`タ`の鞭け局しは殖殖燭辰討覆辰
I佞之eO議に聞っていって寔lを岑りたくなってきた
參貧
ご賠、ありがとうございました。
嶄臭室冩では、パ`トナ`二I冥してます。
AI/XR/Web/スマホなどいろんな宛周があります。
Webマ`ケもd龍あります。
俐佩させて和さい、でも匯指きます。
齢、システム_k卆mも覚ります。
毫Xな秤鷭Qからでも、お毫XにごBjください
栽揖氏芙嶄臭室冩9埖に幄塀氏芙嶄臭室冩になります
旗燕砦仆レ歴
Email: hironori.nakae@nakae-giken.com
Twitter: @hironori_yan

More Related Content

Similar to Azure と Elixir / Phoenix でダウンロ`ドサイト恬ってみた (20)

WordPressAPI
WordPressAPIWordPressAPI
WordPressAPI
Yuki Okamoto
?
File API: Writer & Directories and System
File API: Writer & Directories and SystemFile API: Writer & Directories and System
File API: Writer & Directories and System
Taku AMANO
?
1Day works shop
1Day works shop1Day works shop
1Day works shop
Kazuya Hiruma
?
Hypermedia: The Missing Element to Building Adaptable Web APIs in Rails (a晩云Z井)
Hypermedia: The Missing Element to Building Adaptable Web APIs in Rails (a晩云Z井)Hypermedia: The Missing Element to Building Adaptable Web APIs in Rails (a晩云Z井)
Hypermedia: The Missing Element to Building Adaptable Web APIs in Rails (a晩云Z井)
Toru Kawamura
?
WordPress APIで恬るモバイルアプリ
WordPress APIで恬るモバイルアプリWordPress APIで恬るモバイルアプリ
WordPress APIで恬るモバイルアプリ
アシアル幄塀氏芙
?
Microsoft ExcelでWebブラウザ(Selenium WebDriver)を咾した
Microsoft ExcelでWebブラウザ(Selenium WebDriver)を咾したMicrosoft ExcelでWebブラウザ(Selenium WebDriver)を咾した
Microsoft ExcelでWebブラウザ(Selenium WebDriver)を咾した
剴雰 |峠
?
堰意珂晦5でオフライン安艶恢アプリケ`ションを恬ろう
堰意珂晦5でオフライン安艶恢アプリケ`ションを恬ろう堰意珂晦5でオフライン安艶恢アプリケ`ションを恬ろう
堰意珂晦5でオフライン安艶恢アプリケ`ションを恬ろう
yoshikawa_t
?
GitHubのリポジトリ┌械を いてみよう。 ただし、READMEだけね
GitHubのリポジトリ┌械を いてみよう。 ただし、READMEだけねGitHubのリポジトリ┌械を いてみよう。 ただし、READMEだけね
GitHubのリポジトリ┌械を いてみよう。 ただし、READMEだけね
Naoto TAKAHASHI
?
畏聞い宜し液赫庄岳堰顎恢の鴛壊壊顎艶と意酷皆/閣皆或の安看姻一鴛岳艶馨銭強に薬む(2015/08/26)
畏聞い宜し液赫庄岳堰顎恢の鴛壊壊顎艶と意酷皆/閣皆或の安看姻一鴛岳艶馨銭強に薬む(2015/08/26)畏聞い宜し液赫庄岳堰顎恢の鴛壊壊顎艶と意酷皆/閣皆或の安看姻一鴛岳艶馨銭強に薬む(2015/08/26)
畏聞い宜し液赫庄岳堰顎恢の鴛壊壊顎艶と意酷皆/閣皆或の安看姻一鴛岳艶馨銭強に薬む(2015/08/26)
Masanori Ishigami
?
仝禽艶鉛沿鞄庄で恬るデ`タベ`スツ`ル。その蝕kのポイントは??々
仝禽艶鉛沿鞄庄で恬るデ`タベ`スツ`ル。その蝕kのポイントは??々仝禽艶鉛沿鞄庄で恬るデ`タベ`スツ`ル。その蝕kのポイントは??々
仝禽艶鉛沿鞄庄で恬るデ`タベ`スツ`ル。その蝕kのポイントは??々
Embarcadero Technologies
?
畏デブサミ2012液箸龍とg吩の巌樋來k需
畏デブサミ2012液箸龍とg吩の巌樋來k需畏デブサミ2012液箸龍とg吩の巌樋來k需
畏デブサミ2012液箸龍とg吩の巌樋來k需
Yosuke HASEGAWA
?
マッシュアップ茶膿氏
マッシュアップ茶膿氏マッシュアップ茶膿氏
マッシュアップ茶膿氏
guestadcb01
?
マッシュアップ茶膿氏
マッシュアップ茶膿氏マッシュアップ茶膿氏
マッシュアップ茶膿氏
seiryo
?
JavaScript on GitHub (#kyotojs)
JavaScript on GitHub  (#kyotojs)JavaScript on GitHub  (#kyotojs)
JavaScript on GitHub (#kyotojs)
y_uuki
?
クロスプラットフォ`ム蝕kを辛嬬にする珂看稼温界温
クロスプラットフォ`ム蝕kを辛嬬にする珂看稼温界温クロスプラットフォ`ム蝕kを辛嬬にする珂看稼温界温
クロスプラットフォ`ム蝕kを辛嬬にする珂看稼温界温
Monaca
?
Docker registry秘T 及励指コンテナ侏∀觧の秤鷭Q氏
Docker registry秘T 及励指コンテナ侏∀觧の秤鷭Q氏Docker registry秘T 及励指コンテナ侏∀觧の秤鷭Q氏
Docker registry秘T 及励指コンテナ侏∀觧の秤鷭Q氏
Kengo Okitsu
?
檎顎壊岳で安艶恢皆看界一艶岳な徭芙粥永鴛を聞う
檎顎壊岳で安艶恢皆看界一艶岳な徭芙粥永鴛を聞う檎顎壊岳で安艶恢皆看界一艶岳な徭芙粥永鴛を聞う
檎顎壊岳で安艶恢皆看界一艶岳な徭芙粥永鴛を聞う
Satoshi Yoshikawa
?
訊るべきApache, Web茶氏生
訊るべきApache, Web茶氏生訊るべきApache, Web茶氏生
訊るべきApache, Web茶氏生
Aya Komuro
?
File API: Writer & Directories and System
File API: Writer & Directories and SystemFile API: Writer & Directories and System
File API: Writer & Directories and System
Taku AMANO
?
Hypermedia: The Missing Element to Building Adaptable Web APIs in Rails (a晩云Z井)
Hypermedia: The Missing Element to Building Adaptable Web APIs in Rails (a晩云Z井)Hypermedia: The Missing Element to Building Adaptable Web APIs in Rails (a晩云Z井)
Hypermedia: The Missing Element to Building Adaptable Web APIs in Rails (a晩云Z井)
Toru Kawamura
?
Microsoft ExcelでWebブラウザ(Selenium WebDriver)を咾した
Microsoft ExcelでWebブラウザ(Selenium WebDriver)を咾したMicrosoft ExcelでWebブラウザ(Selenium WebDriver)を咾した
Microsoft ExcelでWebブラウザ(Selenium WebDriver)を咾した
剴雰 |峠
?
堰意珂晦5でオフライン安艶恢アプリケ`ションを恬ろう
堰意珂晦5でオフライン安艶恢アプリケ`ションを恬ろう堰意珂晦5でオフライン安艶恢アプリケ`ションを恬ろう
堰意珂晦5でオフライン安艶恢アプリケ`ションを恬ろう
yoshikawa_t
?
GitHubのリポジトリ┌械を いてみよう。 ただし、READMEだけね
GitHubのリポジトリ┌械を いてみよう。 ただし、READMEだけねGitHubのリポジトリ┌械を いてみよう。 ただし、READMEだけね
GitHubのリポジトリ┌械を いてみよう。 ただし、READMEだけね
Naoto TAKAHASHI
?
畏聞い宜し液赫庄岳堰顎恢の鴛壊壊顎艶と意酷皆/閣皆或の安看姻一鴛岳艶馨銭強に薬む(2015/08/26)
畏聞い宜し液赫庄岳堰顎恢の鴛壊壊顎艶と意酷皆/閣皆或の安看姻一鴛岳艶馨銭強に薬む(2015/08/26)畏聞い宜し液赫庄岳堰顎恢の鴛壊壊顎艶と意酷皆/閣皆或の安看姻一鴛岳艶馨銭強に薬む(2015/08/26)
畏聞い宜し液赫庄岳堰顎恢の鴛壊壊顎艶と意酷皆/閣皆或の安看姻一鴛岳艶馨銭強に薬む(2015/08/26)
Masanori Ishigami
?
仝禽艶鉛沿鞄庄で恬るデ`タベ`スツ`ル。その蝕kのポイントは??々
仝禽艶鉛沿鞄庄で恬るデ`タベ`スツ`ル。その蝕kのポイントは??々仝禽艶鉛沿鞄庄で恬るデ`タベ`スツ`ル。その蝕kのポイントは??々
仝禽艶鉛沿鞄庄で恬るデ`タベ`スツ`ル。その蝕kのポイントは??々
Embarcadero Technologies
?
畏デブサミ2012液箸龍とg吩の巌樋來k需
畏デブサミ2012液箸龍とg吩の巌樋來k需畏デブサミ2012液箸龍とg吩の巌樋來k需
畏デブサミ2012液箸龍とg吩の巌樋來k需
Yosuke HASEGAWA
?
マッシュアップ茶膿氏
マッシュアップ茶膿氏マッシュアップ茶膿氏
マッシュアップ茶膿氏
guestadcb01
?
マッシュアップ茶膿氏
マッシュアップ茶膿氏マッシュアップ茶膿氏
マッシュアップ茶膿氏
seiryo
?
JavaScript on GitHub (#kyotojs)
JavaScript on GitHub  (#kyotojs)JavaScript on GitHub  (#kyotojs)
JavaScript on GitHub (#kyotojs)
y_uuki
?
クロスプラットフォ`ム蝕kを辛嬬にする珂看稼温界温
クロスプラットフォ`ム蝕kを辛嬬にする珂看稼温界温クロスプラットフォ`ム蝕kを辛嬬にする珂看稼温界温
クロスプラットフォ`ム蝕kを辛嬬にする珂看稼温界温
Monaca
?
Docker registry秘T 及励指コンテナ侏∀觧の秤鷭Q氏
Docker registry秘T 及励指コンテナ侏∀觧の秤鷭Q氏Docker registry秘T 及励指コンテナ侏∀觧の秤鷭Q氏
Docker registry秘T 及励指コンテナ侏∀觧の秤鷭Q氏
Kengo Okitsu
?
檎顎壊岳で安艶恢皆看界一艶岳な徭芙粥永鴛を聞う
檎顎壊岳で安艶恢皆看界一艶岳な徭芙粥永鴛を聞う檎顎壊岳で安艶恢皆看界一艶岳な徭芙粥永鴛を聞う
檎顎壊岳で安艶恢皆看界一艶岳な徭芙粥永鴛を聞う
Satoshi Yoshikawa
?
訊るべきApache, Web茶氏生
訊るべきApache, Web茶氏生訊るべきApache, Web茶氏生
訊るべきApache, Web茶氏生
Aya Komuro
?

More from hironroinakae (8)

Enjoy 徊殕洞 ~ 徊殕洞秘T ~ aaaaaaaaaaaaaaaaa
Enjoy 徊殕洞 ~ 徊殕洞秘T ~ aaaaaaaaaaaaaaaaaEnjoy 徊殕洞 ~ 徊殕洞秘T ~ aaaaaaaaaaaaaaaaa
Enjoy 徊殕洞 ~ 徊殕洞秘T ~ aaaaaaaaaaaaaaaaa
hironroinakae
?
Realtime Remote Dance with 10 people using TDPT and WebRTC and etc..
Realtime Remote Dance with 10 people using TDPT and WebRTC and etc..Realtime Remote Dance with 10 people using TDPT and WebRTC and etc..
Realtime Remote Dance with 10 people using TDPT and WebRTC and etc..
hironroinakae
?
TDPT + VMCプロトコル on WebRTC
TDPT + VMCプロトコル on WebRTCTDPT + VMCプロトコル on WebRTC
TDPT + VMCプロトコル on WebRTC
hironroinakae
?
Hubsカスタマイズ 佩咼蹈鞍ゝ辰筌丱奪エンドの
Hubsカスタマイズ 佩咼蹈鞍ゝ辰筌丱奪エンドのHubsカスタマイズ 佩咼蹈鞍ゝ辰筌丱奪エンドの
Hubsカスタマイズ 佩咼蹈鞍ゝ辰筌丱奪エンドの
hironroinakae
?
堰顎恢壊でアカペラ
堰顎恢壊でアカペラ堰顎恢壊でアカペラ
堰顎恢壊でアカペラ
hironroinakae
?
堰顎恢坪でラクラク畳g?`閣檎コマ`ス嫖`
堰顎恢坪でラクラク畳g?`閣檎コマ`ス嫖`堰顎恢坪でラクラク畳g?`閣檎コマ`ス嫖`
堰顎恢坪でラクラク畳g?`閣檎コマ`ス嫖`
hironroinakae
?
堰顎恢壊を採業も篤欧靴撞辰訊需、三します
堰顎恢壊を採業も篤欧靴撞辰訊需、三します堰顎恢壊を採業も篤欧靴撞辰訊需、三します
堰顎恢壊を採業も篤欧靴撞辰訊需、三します
hironroinakae
?
Hubsカスタマイズ eWEBサイトとのログインB亊による秘片崙
Hubsカスタマイズ eWEBサイトとのログインB亊による秘片崙Hubsカスタマイズ eWEBサイトとのログインB亊による秘片崙
Hubsカスタマイズ eWEBサイトとのログインB亊による秘片崙
hironroinakae
?
Enjoy 徊殕洞 ~ 徊殕洞秘T ~ aaaaaaaaaaaaaaaaa
Enjoy 徊殕洞 ~ 徊殕洞秘T ~ aaaaaaaaaaaaaaaaaEnjoy 徊殕洞 ~ 徊殕洞秘T ~ aaaaaaaaaaaaaaaaa
Enjoy 徊殕洞 ~ 徊殕洞秘T ~ aaaaaaaaaaaaaaaaa
hironroinakae
?
Realtime Remote Dance with 10 people using TDPT and WebRTC and etc..
Realtime Remote Dance with 10 people using TDPT and WebRTC and etc..Realtime Remote Dance with 10 people using TDPT and WebRTC and etc..
Realtime Remote Dance with 10 people using TDPT and WebRTC and etc..
hironroinakae
?
TDPT + VMCプロトコル on WebRTC
TDPT + VMCプロトコル on WebRTCTDPT + VMCプロトコル on WebRTC
TDPT + VMCプロトコル on WebRTC
hironroinakae
?
Hubsカスタマイズ 佩咼蹈鞍ゝ辰筌丱奪エンドの
Hubsカスタマイズ 佩咼蹈鞍ゝ辰筌丱奪エンドのHubsカスタマイズ 佩咼蹈鞍ゝ辰筌丱奪エンドの
Hubsカスタマイズ 佩咼蹈鞍ゝ辰筌丱奪エンドの
hironroinakae
?
堰顎恢壊でアカペラ
堰顎恢壊でアカペラ堰顎恢壊でアカペラ
堰顎恢壊でアカペラ
hironroinakae
?
堰顎恢坪でラクラク畳g?`閣檎コマ`ス嫖`
堰顎恢坪でラクラク畳g?`閣檎コマ`ス嫖`堰顎恢坪でラクラク畳g?`閣檎コマ`ス嫖`
堰顎恢坪でラクラク畳g?`閣檎コマ`ス嫖`
hironroinakae
?
堰顎恢壊を採業も篤欧靴撞辰訊需、三します
堰顎恢壊を採業も篤欧靴撞辰訊需、三します堰顎恢壊を採業も篤欧靴撞辰訊需、三します
堰顎恢壊を採業も篤欧靴撞辰訊需、三します
hironroinakae
?
Hubsカスタマイズ eWEBサイトとのログインB亊による秘片崙
Hubsカスタマイズ eWEBサイトとのログインB亊による秘片崙Hubsカスタマイズ eWEBサイトとのログインB亊による秘片崙
Hubsカスタマイズ eWEBサイトとのログインB亊による秘片崙
hironroinakae
?

Azure と Elixir / Phoenix でダウンロ`ドサイト恬ってみた