TIS ENGINEER NOTE

27才文系出身フリーランスエンジニアのブログ

エンジニア独立

Webサービス・Webアプリケーションを作って公開するまでの流れ

投稿日:

エンジニアとして活動していくに際して、自分で作成し公開している制作物があるというのは非常に強力なアピールポイントとなります。

もちろんクオリティが高いに越したことはありませんが、自分で作成し公開までを行なったというだけでもかなりの評価を得られます。

  • これからエンジニアになりたい
  • エンジニアとしてのキャリアアップ・キャリアチェンジを望んでいる

という人には大変オススメのプロセスです。

実際僕もRailsを未経験の状態から勉強していた際の仕上げとして作成&公開したWebアプリケーションのおかげであっさりとRails案件に参加することができました。

そこで今日は初めてWebサービス・Webアプリケーションを作成・公開するという人のための作業の流れを紹介しようと思います。

プログラミング初心者や業務未経験の人にも伝わるよう噛み砕いて説明していきます。

具体例というよりも、初心者がイメージしにくいであろうポイントをかいつまんで概要を説明していきます。

今はネット上に1つ1つの手順に関する詳細な記事がありますので、あとはググりながら着実に進めていってもらえればと思います。

この記事ではみなさんの「何を調べればいいかが分からない」を解決するための記事と思っていただければと。

何を作ってサービスを作成するか

Webサービス・Webアプリケーションを公開するためには何かしらのプログラミング言語、フレームワークを使って作成する必要があります。

僕はRuby on RailsというWebフレームワークを使用することを個人的にオススメしています。

理由としては

  • ネット上に参考にできる情報がたくさんある
  • 求人の数が多い
  • 簡単なサービスを作るだけなら覚えることが少ない

などがあります。

サービスを完成させる

使用する技術が決まったら、実際に自分のPC上で動かして、考えていた動きを実現できるようになるまで作り込みます。

一言で言ってしまっていますが、ここが一番労力を使い大変なポイントです。

とはいえ作業のイメージがしやすく、ネット上にある情報を流用できる箇所が多いポイントでもあります。

何より自分の考えたサービスを形にするというプロセスはなかなか面白いフェーズですので、そこまで苦にならず進めることができるのではないかと思います。

サーバーを借りる

非エンジニアの視点だと、いわゆるxserverなどのレンタルサーバーをイメージするかも知れません。

しかし自分でプログラミングして作ったWebサービス・Webアプリケーションを公開する場合、一般的なレンタルサーバーだと難しいケースが多いです。

細かい話は省きますが、レンタルサーバーだと1つのサーバーを他の利用者と共同で使う形になります。そのため自分で設定できる範囲が狭く、使う技術によってはプログラムを動かすことが不可能であることが多いです。

代わりに利用するのが、Conohaと言ったVPSかAWSなどのクラウドコンピューティングサービスです。

こちらも細かい説明をするとキリがないのでザックリ説明すると、常に動かしておける自分用のPCを1つ借りられるようなイメージです。

それによって、自由にWebサービスを動かすための諸々をインストールしたり、動かしおくことができるようになるわけです。

どんなサーバーを利用すれば良いか

初心者がいきなりAWSなどのクラウドサービスを利用するのはハードルが高いと考えています。

個人的に自分でもよく利用しているConohaというVPSを利用することをオススメしています。

料金体系がシンプルだし、もし大きな容量が必要になった時に簡単な操作で容量の拡張やサーバーの複製を行うことができるからです。

詳しくは以下の記事でも紹介していますので、興味のある方はご覧になってみてください。

https://tisnote.com/web-service-conoha-vps/

ドメインを購入する

サーバーを借りて、セットアップすればサービス自体を公開することは可能ですが、わかりにくいIPアドレス(例:192.XXX.XXX.XXX)でしかユーザーはアクセスできません。

google.comやyahoo.co.jpみたいに分かりやすいURLでユーザーにアクセスしてもらうためにはドメインというものを購入してIPアドレスと紐付ける必要があります。

僕はドメインの購入と設定にはお名前.comをよく使っています。大手で操作もわかりやすいですからね。

料金は大体1000~2000円/年程度ですので財布にも優しいです。

使いたいドメインがすでに利用されている可能性もありますので、サービス名などを決める段階でも、使うことになるであろうドメインが利用済みではないかチェックしておくのもいいでしょう。

サービスによって優劣がある類のものではないため、サクッと購入してしまいましょう。

サーバーとドメインを紐付ける

購入したドメインにアクセスが会った時、借りているサーバーに通信が行くようにするには、DNSというものを使ってドメインとIPアドレスの紐付けをする必要があります。

ここらへんの具体的な操作はドメイン販売サービスや借りたサーバーの種類によって異なります。

「[サーバーサービス名] [ドメインサービス名]」といった形でググると大体の組み合わせで先駆者が手順を紹介してくれていますので、参考にしながらやればそこまで苦戦はしないことと思います。

サーバー上でアプリケーションが動くようにする

ざっくり言えばローカルで動かしていたのと同様に借りたサーバーの状態を設定します。

開発を行なっていたPCはMacかWindowsのケースが多いと思いますが、実際にWebサービスを公開するためのサーバーにはLinux系統が使われていることがほとんどです。

そこらへんのOSの差分を鑑みながら、本番特有の設定などを行なっていきます。

基本的にターミナル上での作業となるため、わかりにくく感じるかもしれませんが、普通にやっている開発 + α程度のことだと思いますので、ググりながらやれば必ず達成できるでしょう。

完成

これで晴れてあなたのサービスが全世界に公開されることとなります。

基本的な流れだけを説明でしたので、一見簡単に見えるかも知れませんが実際には詳細な部分で詰まることはたくさんあると思います。

しかしインターネット上に親切な方々が残してくれた情報のおかげで、諦めずにググり続ければ未経験からでも十分達成可能な作業です。

完成すれば面接時のアピールポイントとして大活躍してくれること間違いなしですので、本気でエンジニアになりたい・キャリアアップしたいという人は是非チャレンジしてみてください。

よく読まれている記事

エンジニア独立

2018/1/13

他のエンジニアと差をつけるための面談前の下準備

こんにちは、フリーエンジニアのてぃすです。 僕は正社員から派遣、フリーランスへと転身する際に、絶対に妥協したくないという意志の元、半年ほどの間に10件近くの面談を体験してきました。 今日はその時の体験を元に、エンジニアが面談を受ける前に下調べしておくべきコンテンツについて紹介していこうと思います。 なぜ下調べが必要か エンジニアって面談を軽視している人が多いんですよね。 ある程度の経歴があるエンジニアは、売り手市場であることも手伝い、まあまあ満足できる就業先を得られるのでそこまで面談対策をじっくりしている ...

続きを読む

エンジニア入門

2018/3/26

エンジニアは勉強し続けなければいけない職業なのか

こんにちは。フリーランスエンジニアのてぃすです。 最近は就職・転職する際にエンジニアを選択肢に含める人が増えてきています。 しかしエンジニアという職業を候補にあげるにあたって、 エンジニアは働きながら勉強し続けなければいけないのではないか? という疑問もよく見聞きします。 そこで今回はフリーランスエンジニアとして活動している僕の視点からこの疑問についての答えを説明していこうと思います。 結論 先に結論を述べると、 エンジニアは勉強し続けなければいけないのか? という疑問の答えはNOです。 決してエンジニア ...

続きを読む

エンジニア独立

2018/1/2

本当は紹介したくない穴場フリーランスエージェント『IT求人ナビ』

エンジニアがフリーランスとして独立することを考えたとき、重要になってくるのが案件紹介エージェント選び。 プログラマー・SEという職業がバブル状態である近年、そういった案件紹介サービスは大量に存在しています。しかもどのサービスも『高単価』『案件多数』など似たような売り文句ばかりで選ぶ側としては結構困ってしまいますよね。 そういった場合、業界最大手であるギークスジョブやレバテックフリーランスなどを手堅く利用するのが常套手段となりますが、あまり名前が知られていなくても、豊富な案件数や充実したサービスを提供してく ...

続きを読む

エンジニア入門

2018/8/19

プログラミングスクールって実際のところどうなの?

こんにちは、フリーエンジニアのてぃすです。 プログラミングスクール、今や広告やSNSでも頻繁に目にするこのワード。 初心者がプログラミングを始めるなら通うべき 独学でも十分だから必要ない プログラミングスクールに通ってもプログラマになれない などなど賛否両論飛び交っていますが、今日は現役エンジニアの視点からプログラミングスクールのメリット・デメリット、そしてエンジニアを目指す上での有力な選択肢となるかについてお話していきます。 プログラミングスクールとは何か その名前の通り、プログラミングを学ぶための学校 ...

続きを読む

エンジニア入門

2018/8/19

最も効率の良いプログラミング学習フロー

こんにちは、フリーエンジニアのてぃすです。 エンジニアの需要が拡大し、売り手市場となったことから、プログラミングを学習し始めた人、学習してみたいという人がかなり増えてきています。 これからの時代プログラミングを学習することは、豊かな人生を目指す上で非常に強力なスキルとなってきます。 今回はプログラミング初心者の方々に向けて、最も効率的なプログラミングの学習方法を解説していきます。 はじめに この学習フローでは、遊びのメカニズムを利用して進めていきます。 どういうことでしょうか。説明していきます。 遊ぶ感覚 ...

続きを読む

-エンジニア独立

Copyright© TIS ENGINEER NOTE , 2018 All Rights Reserved Powered by AFFINGER5.