brew doctor
brew update
brew upgrade
brew install openssl
curl -O https://raw.githubusercontent.com/kerl/kerl/master/kerl && chmod a+x kerl
brew update
brew upgrade
brew install openssl
curl -O https://raw.githubusercontent.com/kerl/kerl/master/kerl && chmod a+x kerl
export KERL_BUILD_BACKEND=git
export OTP_GITHUB_URL="https://github.com/basho/otp"
kerl list releases
kerl update releases
KERL_CONFIGURE_OPTIONS="--disable-hipe --enable-smp-support --enable-threads
--enable-kernel-poll --with-ssl=/usr/local/opt/openssl --without-odbc --enable-darwin-64bit" kerl build 19.2 19.2
kerl install 19.2 ~/erlang/19.2
. ~/erlang/19.2/activate
erl -version
wget https://s3.amazonaws.com/rebar3/rebar3 && chmod +x rebar3
./rebar3 local install
rebar3 new release cowboy_hello_world
cd cowboy_hello_world/
vi rebar.config
{deps, [ {cowboy, {git, "https://github.com/ninenines/cowboy", {tag, "2.0.0-pre.1"}}} ]}. {plugins, [rebar3_run]}.
Add cowboy to the list {application, [{applications, [kernel, stdlib, cowboy]}]}
vi apps/cowboy_hello_world/src/cowboy_hello_world.app.src
vi apps/cowboy_hello_world/src/cowboy_hello_world_app.erl
start(_StartType, _StartArgs) -> {ok, Pid} = 'cowboy_hello_world_sup':start_link(), Routes = [ { '_', [ {"/", cowboy_hello_world_root, []} ] } ], Dispatch = cowboy_router:compile(Routes), NumAcceptors = 10, TransOpts = [ {ip, {0,0,0,0}}, {port, 2938} ], ProtoOpts = [{env, [{dispatch, Dispatch}]}], {ok, _} = cowboy:start_http(chicken_poo_poo, NumAcceptors, TransOpts, ProtoOpts), {ok, Pid}.
vi apps/cowboy_hello_world/src/cowboy_hello_world_root.erl
-module(cowboy_hello_world_root). -export([init/2]). init(Req, Opts) -> Req2 = cowboy_req:reply(200, [{<<"content-type">>, <<"text/plain">>}], <<"Hello Erlang!">>, Req), {ok, Req2, Opts}.
rebar3 run
curl http://localhost:2938
curl http://localhost:2938
댓글 없음:
댓글 쓰기