Skip to content

Commit 7e411d4

Browse files
committed
feat: Use Ruby 3.4.1 and Rails 8.0.1 in Ubuntu 24.04
- Update Ruby version to 3.4.1 - Update Rails version to 8.0.1 ```dockerfile FROM ubuntu:24.04 RUN apt-get update && apt-get -y upgrade RUN apt-get install -y sudo RUN echo 'ubuntu:ubuntu' |chpasswd USER ubuntu ``` in local terminal ``` $ docker build -t my_ubuntu:24.04 ./Dockerfile $ docker run -it --rm -v ${PWD}:/home/ubuntu/installation-scripts my_ubuntu:24.04 ``` in Docker container ``` ubuntu@ed8da7560cd8:~$ bash < <(cat ~/installation-scripts/rails-install-ubuntu.sh) ubuntu@ed8da7560cd8:~$ source ~/.profile ubuntu@ed8da7560cd8:~$ ruby -v ruby 3.4.1 (2024-12-25 revision 48d4efcb85) +PRISM [x86_64-linux] ubuntu@ed8da7560cd8:~$ rails -v Rails 8.0.1 ubuntu@ed8da7560cd8:~$ ubuntu@ed8da7560cd8:~$ rails new .bash_logout .cache/ .local/ .rbenv/ installation-scripts/ .bashrc .gemrc .profile .sudo_as_admin_successful ubuntu@ed8da7560cd8:~$ pwd /home/ubuntu ubuntu@ed8da7560cd8:~$ rails new my_app create create README.md create Rakefile create .ruby-version create config.ru create .gitignore create .gitattributes create Gemfile run git init -b main from "." Initialized empty Git repository in /home/ubuntu/my_app/.git/ create app create app/assets/stylesheets/application.css create app/controllers/application_controller.rb create app/helpers/application_helper.rb create app/jobs/application_job.rb create app/mailers/application_mailer.rb create app/models/application_record.rb create app/views/layouts/application.html.erb create app/views/layouts/mailer.html.erb create app/views/layouts/mailer.text.erb create app/views/pwa/manifest.json.erb create app/views/pwa/service-worker.js create app/assets/images create app/assets/images/.keep create app/controllers/concerns/.keep create app/models/concerns/.keep create bin create bin/brakeman create bin/dev create bin/rails create bin/rake create bin/rubocop create bin/setup create bin/thrust create Dockerfile create .dockerignore create bin/docker-entrypoint create .rubocop.yml create .github/workflows create .github/workflows/ci.yml create .github/dependabot.yml create config create config/routes.rb create config/application.rb create config/environment.rb create config/cable.yml create config/puma.rb create config/storage.yml create config/environments create config/environments/development.rb create config/environments/production.rb create config/environments/test.rb create config/initializers create config/initializers/assets.rb create config/initializers/content_security_policy.rb create config/initializers/cors.rb create config/initializers/filter_parameter_logging.rb create config/initializers/inflections.rb create config/initializers/new_framework_defaults_8_0.rb create config/locales create config/locales/en.yml create config/master.key append .gitignore create config/boot.rb create config/database.yml create db create db/seeds.rb create lib create lib/tasks create lib/tasks/.keep create log create log/.keep create public create public/400.html create public/404.html create public/406-unsupported-browser.html create public/422.html create public/500.html create public/icon.png create public/icon.svg create public/robots.txt create script create script/.keep create tmp create tmp/.keep create tmp/pids create tmp/pids/.keep create vendor create vendor/.keep create test/fixtures/files create test/fixtures/files/.keep create test/controllers create test/controllers/.keep create test/mailers create test/mailers/.keep create test/models create test/models/.keep create test/helpers create test/helpers/.keep create test/integration create test/integration/.keep create test/test_helper.rb create test/system create test/system/.keep create test/application_system_test_case.rb create storage create storage/.keep create tmp/storage create tmp/storage/.keep remove config/initializers/cors.rb remove config/initializers/new_framework_defaults_8_0.rb run bundle install --quiet run bundle lock --add-platform=x86_64-linux Writing lockfile to /home/ubuntu/my_app/Gemfile.lock Fetching gem metadata from https://rubygems.org/......... Resolving dependencies... run bundle binstubs bundler rails importmap:install apply /home/ubuntu/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/importmap-rails-2.1.0/lib/install/install.rb Add Importmap include tags in application layout insert app/views/layouts/application.html.erb Create application.js module as entrypoint create app/javascript/application.js Use vendor/javascript for downloaded pins create vendor/javascript create vendor/javascript/.keep Configure importmap paths in config/importmap.rb create config/importmap.rb Copying binstub create bin/importmap run bundle install --quiet rails turbo:install stimulus:install apply /home/ubuntu/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/turbo-rails-2.0.11/lib/install/turbo_with_importmap.rb Import Turbo append app/javascript/application.js Pin Turbo append config/importmap.rb run bundle install --quiet apply /home/ubuntu/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/stimulus-rails-1.3.4/lib/install/stimulus_with_importmap.rb Create controllers directory create app/javascript/controllers create app/javascript/controllers/index.js create app/javascript/controllers/application.js create app/javascript/controllers/hello_controller.js Import Stimulus controllers append app/javascript/application.js Pin Stimulus Appending: pin "@hotwired/stimulus", to: "stimulus.min.js" append config/importmap.rb Appending: pin "@hotwired/stimulus-loading", to: "stimulus-loading.js" append config/importmap.rb Pin all controllers Appending: pin_all_from "app/javascript/controllers", under: "controllers" append config/importmap.rb run bundle install --quiet run bundle binstubs kamal run bundle exec kamal init Created configuration file in config/deploy.yml Created .kamal/secrets file Created sample hooks in .kamal/hooks force .kamal/secrets force config/deploy.yml rails solid_cache:install solid_queue:install solid_cable:install create config/cache.yml create db/cache_schema.rb gsub config/environments/production.rb create config/queue.yml create config/recurring.yml create db/queue_schema.rb create bin/jobs gsub config/environments/production.rb create db/cable_schema.rb force config/cable.yml ubuntu@ed8da7560cd8:~$ cd my_app/ ubuntu@ed8da7560cd8:~/my_app$ rails s => Booting Puma => Rails 8.0.1 application starting in development => Run `bin/rails server --help` for more startup options Puma starting in single mode... * Puma version: 6.6.0 ("Return to Forever") * Ruby version: ruby 3.4.1 (2024-12-25 revision 48d4efcb85) +PRISM [x86_64-linux] * Min threads: 3 * Max threads: 3 * Environment: development * PID: 25666 * Listening on http://127.0.0.1:3000 * Listening on http://[::1]:3000 Use Ctrl-C to stop ```
1 parent 4f9b05f commit 7e411d4

File tree

2 files changed

+4
-3
lines changed

2 files changed

+4
-3
lines changed

README.md

+1
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,6 @@ To install Ruby on Rails development environment, copy and paste this line in th
1010

1111
sudo apt-get install curl
1212
bash <(curl -sL https://raw.github.com/railsgirls/installation-scripts/master/rails-install-ubuntu.sh)
13+
source ~/.profile
1314

1415

rails-install-ubuntu.sh

+3-3
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ echo "Load rbenv config in install script"
4545
eval "$($HOME/.rbenv/bin/rbenv init - bash)"
4646

4747
echo "Install Ruby"
48-
RUBY_VERSION=3.1.3
48+
RUBY_VERSION=3.4.1
4949
rbenv install "$RUBY_VERSION"
5050
rbenv global "$RUBY_VERSION"
5151

@@ -58,9 +58,9 @@ echo -e "Now we are going to print some information to check that everything is
5858

5959
echo -n "Should be SQLite 3.22.0 or higher: sqlite "
6060
sqlite3 --version
61-
echo -n "Should be Ruby 3.1.3 or higher: "
61+
echo -n "Should be Ruby $RUBY_VERSION or higher: "
6262
ruby -v | cut -d " " -f 2
63-
echo -n "Should be Rails 7.0 or higher: "
63+
echo -n "Should be Rails 8.0 or higher: "
6464
rails -v
6565
echo -e "\n- - - - - -\n"
6666

0 commit comments

Comments
 (0)