Class: Rockstart::Deployment::DockerGenerator

Inherits:
Rails::Generators::Base
  • Object
show all
Includes:
Rails::Generators::AppName, Generators::ClassOptionHelpers
Defined in:
lib/generators/rockstart/deployment/docker/docker_generator.rb

Instance Method Summary collapse

Instance Method Details

#add_docker_composeObject



46
47
48
49
50
# File 'lib/generators/rockstart/deployment/docker/docker_generator.rb', line 46

def add_docker_compose
  @app_home = options[:app_home]
  template "docker-compose.yml", "docker-compose.yml"
  template "docker-compose.test.yml", "docker-compose.test.yml"
end

#create_certs_directoryObject



52
53
54
55
# File 'lib/generators/rockstart/deployment/docker/docker_generator.rb', line 52

def create_certs_directory
  FileUtils.mkdir_p(Rails.root.join("docker", "certs", "web"))
  append_file ".gitignore", "\n# Docker Configuration\ndocker/certs\n"
end

#create_dockerfileObject



33
34
35
36
37
# File 'lib/generators/rockstart/deployment/docker/docker_generator.rb', line 33

def create_dockerfile
  @root_image = options[:root_image]
  @app_home = options[:app_home]
  template "app/Dockerfile-app", "Dockerfile"
end

#create_dockerignoreObject



29
30
31
# File 'lib/generators/rockstart/deployment/docker/docker_generator.rb', line 29

def create_dockerignore
  copy_file "dockerignore", ".dockerignore"
end

#create_dotenv_filesObject



57
58
59
60
# File 'lib/generators/rockstart/deployment/docker/docker_generator.rb', line 57

def create_dotenv_files
  template "dotenv.docker.tt", ".env.docker"
  template "dotenv.docker-db.tt", ".env.docker-db"
end

#create_nginx_imageObject



39
40
41
42
43
44
# File 'lib/generators/rockstart/deployment/docker/docker_generator.rb', line 39

def create_nginx_image
  @root_image = options[:root_image]
  @app_home = options[:app_home]
  template "web/Dockerfile-web", "docker/web/Dockerfile"
  template "web/nginx.conf", "docker/web/nginx.conf"
end