docker compose - ignore build context path
I have docker-compose.yml file with build context property specified like this:
version: '3'
services:
my-service:
container_name: my-service
image: my-service
build:
context: foo
ports:
- 8088:8088
# other services
When I run docker-compose up locally, build context does exist and everything works fine. However, my CI server is configured to use the same docker-compose.yml file but there is no build context (images are copied as .tar archive via SSH and then loaded via docker load).
Now I've got an error:
ERROR: build path /foo either does not exist, is not accessible, or is
not a valid URL.
So I've tried to find a way to suppress looking for this build context when running docker-compose up (I don't want to build images cause they are already up-to-date), but docker-compose up --no-build does not work. Any ideas?
docker docker-compose continuous-integration suppress
add a comment |
I have docker-compose.yml file with build context property specified like this:
version: '3'
services:
my-service:
container_name: my-service
image: my-service
build:
context: foo
ports:
- 8088:8088
# other services
When I run docker-compose up locally, build context does exist and everything works fine. However, my CI server is configured to use the same docker-compose.yml file but there is no build context (images are copied as .tar archive via SSH and then loaded via docker load).
Now I've got an error:
ERROR: build path /foo either does not exist, is not accessible, or is
not a valid URL.
So I've tried to find a way to suppress looking for this build context when running docker-compose up (I don't want to build images cause they are already up-to-date), but docker-compose up --no-build does not work. Any ideas?
docker docker-compose continuous-integration suppress
just give set it to an empty dir if you want to avoid setting it to.. But the directory must exists thats why (amongst other reasons) a common practice to create adockerdir in the project root, and move theDocerfileinto it. Then build in thedockerdirectory which will be an empty context.
– lependu
Nov 20 '18 at 9:43
But the point is that I don't want to modify docker-compose.yml file. This file is copied from repository to CI server, so I don't want to change it (I would have to use some regex probably). Alternatively, I can maintain two separate compose files, but I'd like to avoid it if it's unnecessary
– k13i
Nov 20 '18 at 10:01
1
Did you try to add afoodirectory in your root of a repo with am empty.keeporReadmefile in it which explains why the empty dir is necessary.
– lependu
Nov 20 '18 at 11:18
On CI server there is no foo directory. There is just .tar archive with docker image
– k13i
Nov 20 '18 at 12:11
add a comment |
I have docker-compose.yml file with build context property specified like this:
version: '3'
services:
my-service:
container_name: my-service
image: my-service
build:
context: foo
ports:
- 8088:8088
# other services
When I run docker-compose up locally, build context does exist and everything works fine. However, my CI server is configured to use the same docker-compose.yml file but there is no build context (images are copied as .tar archive via SSH and then loaded via docker load).
Now I've got an error:
ERROR: build path /foo either does not exist, is not accessible, or is
not a valid URL.
So I've tried to find a way to suppress looking for this build context when running docker-compose up (I don't want to build images cause they are already up-to-date), but docker-compose up --no-build does not work. Any ideas?
docker docker-compose continuous-integration suppress
I have docker-compose.yml file with build context property specified like this:
version: '3'
services:
my-service:
container_name: my-service
image: my-service
build:
context: foo
ports:
- 8088:8088
# other services
When I run docker-compose up locally, build context does exist and everything works fine. However, my CI server is configured to use the same docker-compose.yml file but there is no build context (images are copied as .tar archive via SSH and then loaded via docker load).
Now I've got an error:
ERROR: build path /foo either does not exist, is not accessible, or is
not a valid URL.
So I've tried to find a way to suppress looking for this build context when running docker-compose up (I don't want to build images cause they are already up-to-date), but docker-compose up --no-build does not work. Any ideas?
docker docker-compose continuous-integration suppress
docker docker-compose continuous-integration suppress
asked Nov 20 '18 at 8:43
k13ik13i
758722
758722
just give set it to an empty dir if you want to avoid setting it to.. But the directory must exists thats why (amongst other reasons) a common practice to create adockerdir in the project root, and move theDocerfileinto it. Then build in thedockerdirectory which will be an empty context.
– lependu
Nov 20 '18 at 9:43
But the point is that I don't want to modify docker-compose.yml file. This file is copied from repository to CI server, so I don't want to change it (I would have to use some regex probably). Alternatively, I can maintain two separate compose files, but I'd like to avoid it if it's unnecessary
– k13i
Nov 20 '18 at 10:01
1
Did you try to add afoodirectory in your root of a repo with am empty.keeporReadmefile in it which explains why the empty dir is necessary.
– lependu
Nov 20 '18 at 11:18
On CI server there is no foo directory. There is just .tar archive with docker image
– k13i
Nov 20 '18 at 12:11
add a comment |
just give set it to an empty dir if you want to avoid setting it to.. But the directory must exists thats why (amongst other reasons) a common practice to create adockerdir in the project root, and move theDocerfileinto it. Then build in thedockerdirectory which will be an empty context.
– lependu
Nov 20 '18 at 9:43
But the point is that I don't want to modify docker-compose.yml file. This file is copied from repository to CI server, so I don't want to change it (I would have to use some regex probably). Alternatively, I can maintain two separate compose files, but I'd like to avoid it if it's unnecessary
– k13i
Nov 20 '18 at 10:01
1
Did you try to add afoodirectory in your root of a repo with am empty.keeporReadmefile in it which explains why the empty dir is necessary.
– lependu
Nov 20 '18 at 11:18
On CI server there is no foo directory. There is just .tar archive with docker image
– k13i
Nov 20 '18 at 12:11
just give set it to an empty dir if you want to avoid setting it to
.. But the directory must exists thats why (amongst other reasons) a common practice to create a docker dir in the project root, and move the Docerfile into it. Then build in the docker directory which will be an empty context.– lependu
Nov 20 '18 at 9:43
just give set it to an empty dir if you want to avoid setting it to
.. But the directory must exists thats why (amongst other reasons) a common practice to create a docker dir in the project root, and move the Docerfile into it. Then build in the docker directory which will be an empty context.– lependu
Nov 20 '18 at 9:43
But the point is that I don't want to modify docker-compose.yml file. This file is copied from repository to CI server, so I don't want to change it (I would have to use some regex probably). Alternatively, I can maintain two separate compose files, but I'd like to avoid it if it's unnecessary
– k13i
Nov 20 '18 at 10:01
But the point is that I don't want to modify docker-compose.yml file. This file is copied from repository to CI server, so I don't want to change it (I would have to use some regex probably). Alternatively, I can maintain two separate compose files, but I'd like to avoid it if it's unnecessary
– k13i
Nov 20 '18 at 10:01
1
1
Did you try to add a
foo directory in your root of a repo with am empty .keep or Readme file in it which explains why the empty dir is necessary.– lependu
Nov 20 '18 at 11:18
Did you try to add a
foo directory in your root of a repo with am empty .keep or Readme file in it which explains why the empty dir is necessary.– lependu
Nov 20 '18 at 11:18
On CI server there is no foo directory. There is just .tar archive with docker image
– k13i
Nov 20 '18 at 12:11
On CI server there is no foo directory. There is just .tar archive with docker image
– k13i
Nov 20 '18 at 12:11
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53389151%2fdocker-compose-ignore-build-context-path%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53389151%2fdocker-compose-ignore-build-context-path%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
just give set it to an empty dir if you want to avoid setting it to
.. But the directory must exists thats why (amongst other reasons) a common practice to create adockerdir in the project root, and move theDocerfileinto it. Then build in thedockerdirectory which will be an empty context.– lependu
Nov 20 '18 at 9:43
But the point is that I don't want to modify docker-compose.yml file. This file is copied from repository to CI server, so I don't want to change it (I would have to use some regex probably). Alternatively, I can maintain two separate compose files, but I'd like to avoid it if it's unnecessary
– k13i
Nov 20 '18 at 10:01
1
Did you try to add a
foodirectory in your root of a repo with am empty.keeporReadmefile in it which explains why the empty dir is necessary.– lependu
Nov 20 '18 at 11:18
On CI server there is no foo directory. There is just .tar archive with docker image
– k13i
Nov 20 '18 at 12:11