"Automated installation and configuration of development environments" - for pt-BR support, please check out https://gitter.im/azukiapp/azk/pt
is there a way to have run server and client from the same folder but using different uri’s? This certainly doesnt work as I’ve found out:
systems({
'priim-client': {
docker_extra: {
User: 'root',
},
depends: ["priim-server"],
image: {"docker": "azukiapp/node"},
provision: [
"npm install -g webpack@2.1.0-beta.4",
"npm install -g ionic@beta",
"npm install"
],
workdir: "/azk/#{manifest.dir}",
shell: "/bin/bash",
command: ["npm", "start"],
wait: 200,
mounts: {
'/azk/#{manifest.dir}': sync("."),
'/azk/#{manifest.dir}/node_modules': persistent("./node_modules")
},
scalable: {"default": 1},
http: {
domains: [
"#{system.name}.#{azk.default_domain}"
]
},
ports: {
// exports global variables
http: "8100",
},
envs: {
// Make sure that the PORT value is the same as the one
// in ports/http below, and that it's also the same
// if you're setting it in a .env file
PORT: "8100",
}
},
'priim-server': {
docker_extra: {
User: 'root',
},
depends: ["rethinkdb"],
image: {"docker": "azukiapp/node"},
provision: [
"rm -rf node_modules/*",
"npm install -g webpack@2.1.0-beta.4",
"npm install -g ionic@beta",
"npm install"
],
workdir: "/azk/#{manifest.dir}",
shell: "/bin/bash",
command: ["npm", "run", "serve"],
wait: 200,
mounts: {
'/azk/#{manifest.dir}': sync("."),
'/azk/#{manifest.dir}/node_modules': persistent("./node_modules")
},
scalable: {"default": 1},
http: {
domains: [
"#{env.HOST_DOMAIN}",
"#{env.HOST_IP}",
"#{system.name}.#{azk.default_domain}"
]
},
ports: {
// exports global variables
http: "5000",
},
envs: {
// Make sure that the PORT value is the same as the one
// in ports/http below, and that it's also the same
// if you're setting it in a .env file
PORT: "5000",
}
},
rethinkdb: {
image: { docker: 'rethinkdb' },
// If you need to expose and bind the rethinkdb ports outside of the docker
// enable the docker_extra setting below
docker_extra: {
HostConfig: {
'PortBindings': {
'8080/tcp': [{ 'HostPort': '8080' }],
'28015/tcp': [{ 'HostPort': '28015' }],
'29015/tcp': [{ 'HostPort': '29015' }]
}
}
},
shell: '/bin/bash',
scalable: false,
command: "rethinkdb --bind all --direct-io --cache-size 512 --server-name rethinkdb --directory ./rethinkdb --canonical-address rethinkdb.dev.azk.io",
wait: 75,
mounts: {
'/rethinkdb': persistent('rethinkdb-#{manifest.dir}'),
'/data': persistent('#{system.name}/data')
},
ports: {
http: '8080',
data: '28015',
cluster: '29015'
},
http: {
domains: [ '#{system.name}.#{azk.default_domain}' ]
},
export_envs: {
'DATABASE_HOST': '#{net.host}',
'DATABASE_PORT': '#{net.port.data}',
'DATABASE_URL': 'rethinkdb://#{net.host}:#{net.port.data}'
}
},
deploy: {
image: {'docker': 'azukiapp/deploy-digitalocean'},
mounts: {
'/azk/deploy/src' : path('.'),
'/azk/deploy/.ssh': path('#{env.HOME}/.ssh'),
'/azk/deploy/.config': persistent('deploy-config')
},
envs: {
REMOTE_HOST: "192.168.0.77"
},
scalable: {'default': 0, 'limit': 0}
}
});
Any suggestions?
priim-client
depends on priim-server
maybe you do not need the priim-client
sync mount
. They are sending files to the same place.
mounts: {
'/azk/#{manifest.dir}/#{system.name}': sync("."),
'/azk/#{manifest.dir}/#{system.name}/node_modules': persistent("./node_modules")
},
ports: {
// exports global variables
data: “5000”,
http: "8100",
},
envs: {
// Make sure that the PORT value is the same as the one
// in ports/http below, and that it's also the same
// if you're setting it in a .env file
PORT: “5000”,
DEV: "8100",
}
azk shell
<sys-name>azk shell
<sys-name>—
<command>
# start system using azk
azk start [system_name]
# get id of running container
adocker ps | grep [system_name]
# connecting in running system
adocker exec $CONTAINER_ID