Skip to content
pusher edited this page Aug 5, 2018 · 3 revisions

Bonus track

[ english ] [ spanish ]

  • Si no se encontró un shortcut y esta configurado ese directorio, mostrara los "shortcuts" disponibles.

Config file sample

Este es un caso completo y complejo:

{
  "dry": true,
  "useColors": true,
  "showCommand": false,
  "showTime": true,
  "templates": {
    "project": "myProject",
    "imageName": {
      "base": "${project}-base",
      "dev": "${project}-dev",
      "prod": "${project}-prod"
    },
    "build": "docker build -t",
    "run": "docker run --rm --init -d --name",
    "stop": "docker stop",
    "exec": "docker exec -it",
    "logs": "docker logs",
    "attach": "docker attach",
    "config": {
      "prod": "${imageName.prod} -it -p 80:80 -p 443:443",
      "dev": "${imageName.dev} -it -p 4200:4200 -p 49153:49153 -v /usr/src/server/node_modules -v ${def.cwd}:/usr/src/server -v yarn-cache:/home/node/yarn-cache -v npm-cache:/home/node/npm-cache"
    }
  },
  "shortcuts": {
    "base": {
      "build": "${build} ${imageName.base} . -f Dockerfile-base",
      "run": "${run} ${imageName.base} -it ${imageName.base}",
      "exec": "${exec} ${imageName.base}",
      "enter": "${base.exec} sh",
      "stop": "${stop} ${imageName.base}"
    },
    "dev": {
      "build": "${build} ${imageName.dev} .",
      "run": "${run} ${config.dev} ${imageName.dev}",
      "start": "${exec} ${imageName.dev} yarn start",
      "serve": "${run} ${config.dev} ${imageName.dev} yarn start",
      "attach": "${attach} ${imageName.dev}",
      "exec": "${exec} ${imageName.dev}",
      "enter": "${dev.exec} ash",
      "stop": "${stop} ${imageName.dev}",
      "logs": "${logs} ${imageName.dev}"
    },
    "prod": {
      "build": "cd dist && ${build} ${imageName.prod} .",
      "run": "${run} ${config.prod} ${imageName.prod} sh",
      "start": "${exec} -d ${imageName.prod} node index",
      "serve": "${run} ${config.prod} ${imageName.prod}",
      "exec": "${exec} ${imageName.prod}",
      "enter": "${prod.exec} ash",
      "stop": "${stop} ${imageName.prod}",
      "logs": "${logs} ${imageName.prod}"
    }
  }
}

[ prev ][ next ]