diff --git a/.gitignore b/.gitignore index aa03a48..cb44c0a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,2 @@ /.rake_tasks~ /temp.db -/vendor/ -/bin/ \ No newline at end of file diff --git a/README.md b/README.md index 7994bbc..159cce8 100644 --- a/README.md +++ b/README.md @@ -14,17 +14,6 @@ Next Roda app template iterations will add database, then authentication. ## Setup -### Get git - -``` -sudo apt install git -git config --global user.email "myemail@gmail.com" -git config --global user.name "Full Name" -git config --global credential.helper "cache" - -git clone https://path/to/project.git -``` - ### Prereq installs Will need ruby; install it via package manager or a ruby manager like rbenv/ruby-build. Will need the roda gem, and then an application server such as puma (recommended), gunicorn, or passenger. My examples will use system ruby and puma. @@ -36,62 +25,29 @@ With this example, will basically just ignore the project's Gemfile. Debian 12 ``` sudo apt install ruby ruby-rack puma ruby-erubi ruby-tilt ruby-sequel ruby-sqlite3 rake sudo gem install roda rack-unreloader - -cd my-project ``` -#### Option 2a: Bundler system package +#### Option 2: Bundler -Run the bundle install command from the project's root directory +Run the bundle command from the project's root directory ``` -sudo apt install ruby ruby-bundler ruby-dev gcc pkgconf make g++ libyaml-dev libffi-dev -echo 'gem: --no-document' >> ~/.gemrc -sudo cp ~/.gemrc /root/ -bundle config set --global path 'vendor/bundle' -sudo cp -r .bundle /root/ - -cd my-project +sudo apt install ruby ruby-bundler +bundle config set --local path 'vendor/bundle' bundle install ``` -#### Option 2b: Bundler system gem (recommended) - -Similar to above but might as well use the gem install to get the latest bundler. The Debian apt packaged bundler is currently a bit outdated and missing some features compared to the latest. - -``` -sudo apt install ruby ruby-dev gcc pkgconf make g++ libyaml-dev # zlib1g-dev libffi-dev #(for rails stuff) -echo 'gem: --no-document' >> ~/.gemrc -sudo cp ~/.gemrc /root/ -sudo gem install bundler -bundle config set --global path 'vendor/bundle' -sudo cp -r .bundle /root/ - -cd my-project -bundle install -``` - -#### Option 3: Rbenv Ruby - -Todo - ## Run it In the project root directory: ``` -bundle exec puma - -# or if you did not use bundler to install puma... puma ``` This default to development mode. Run it in production mode with: ``` -RACK_ENV=production bundle exec puma - -# or if you did not install puma RACK_ENV=production puma ``` @@ -99,7 +55,7 @@ For development, just run it like that. For production, probably want to set up ### Run it with systemd in production -Copy the example myapp.service file to `/etc/systemd/system/` and edit accordingly. The example assumes a user named "myapp" with a group name "myapp", the application files are in `/opt/myapp/`, and puma is the system puma. If you installed puma with bundler, the exe will be at `/opt/myapp/vendor/bundle/ruby/3.1.0/bin/puma`. +Copy the example myapp.service file to `/etc/systemd/system/` and edit accordingly. The example assumes a user named "myapp" with a group name "myapp", the application files are in `/opt/myapp/`, and puma is the system puma. ### Notes diff --git a/views/greeting.erb b/views/greeting.erb index 15c8d7a..9de747b 100644 --- a/views/greeting.erb +++ b/views/greeting.erb @@ -1,3 +1,3 @@ -
+
Hello, <%= @name %>!
diff --git a/views/index.erb b/views/index.erb index 25704e6..31b3b2d 100644 --- a/views/index.erb +++ b/views/index.erb @@ -1,3 +1,3 @@ -+
Welcome to my new page! Running in <%= ENV['RACK_ENV'] %> mode!
diff --git a/views/layout.erb b/views/layout.erb index 4869da1..c5ec841 100644 --- a/views/layout.erb +++ b/views/layout.erb @@ -1,17 +1,16 @@ - ++
Hello, <%= u.name %>! You're #<%= u.id %>!
<% end %>