class Dip::Commands::Nginx::Up
Public Class Methods
new(name:, socket:, net:, publish:, image:, domain:, certs:)
click to toggle source
# File lib/dip/commands/nginx.rb, line 10 def initialize(name:, socket:, net:, publish:, image:, domain:, certs:) @name = name @socket = socket @net = net @publish = publish @image = image @domain = domain @certs = certs end
Public Instance Methods
execute()
click to toggle source
# File lib/dip/commands/nginx.rb, line 20 def execute exec_subprocess("docker", "network create #{@net}", panic: false, err: File::NULL) exec_subprocess("docker", "run #{container_args} #{@image}") end
Private Instance Methods
container_args()
click to toggle source
# File lib/dip/commands/nginx.rb, line 27 def container_args result = %w[--detach] result << "--volume #{@socket}:/tmp/docker.sock:ro" result << "--volume #{@certs}:/etc/nginx/certs" unless @certs.to_s.empty? result << "--restart always" result << Array(@publish).map { |p| "--publish #{p}" }.join(" ") result << "--net #{@net}" result << "--name #{@name}" result << "--label com.dnsdock.alias=#{@domain}" result.join(" ") end