Различные методы запуска сервера Rails на пользовательском порту

Чтобы запустить сервер Rails на другом порту, вы можете воспользоваться несколькими способами. Ниже я опишу некоторые из них с примерами кода:

  1. Укажите порт с помощью опции -p:

    rails server -p 3001

    Эта команда запустит сервер на порту 3001.

  2. Установите переменную среды PORT:

    export PORT=3002
    rails server

    При этом для переменной среды PORTбудет установлено значение 3002, и сервер запустится на этом порту.

  3. Измените файл config/puma.rb:

    # config/puma.rb
    port ENV.fetch("PORT") { 3003 }

    По умолчанию Rails использует веб-сервер Puma. В файле конфигурации Puma вы можете указать порт, который хотите использовать. Если переменная среды PORTне установлена, по умолчанию используется порт 3003.

  4. Используйте собственный файл конфигурации:
    Создайте новый файл конфигурации, например config/custom_server.rb, и укажите нужный порт:

    # config/custom_server.rb
    require 'rails/commands/server'
    
    module CustomServer
     class Server < Rails::Server
       def default_options
         super.merge({ Port: 3004 })
       end
     end
    end
    
    Rails::Server.prepend(CustomServer)

    Затем запустите сервер, используя собственный файл конфигурации:

    rails server -c config/custom_server.rb

Это всего лишь несколько способов запустить сервер Rails на другом порту. Вы можете выбрать тот, который лучше всего соответствует вашим потребностям.