我怎样才能改变docker的ID和名称

我使用jenkins来构builddocker容器并将完成的映像发送到AWS S3存储桶。

我试图从Github上获取一个文件到docker镜像上,然后把它打包成一个docker镜像。

目前我有jenkins完成git拉和build立容器,但我不能把它复制到容器的文件。 我得到这个错误:

Building in workspace /var/lib/jenkins/jobs/copy-to-docker/workspace [workspace] $ /bin/sh -xe /tmp/hudson5108979322433439821.sh + docker cp /var/lib/jenkins/jobs/Move git pull files to docker/workspace/html/:index.html + :/var/lib/docker/containers /tmp/hudson5108979322433439821.sh: 2: /tmp/hudson5108979322433439821.sh: :/var/lib/docker/containers: not found docker: "cp" requires 2 arguments. See 'docker cp --help'. Usage: docker cp [OPTIONS] CONTAINER:PATH LOCALPATH|- docker cp [OPTIONS] LOCALPATH|- CONTAINER:PATH Copy files/folders between a container and the local filesystem Use '-' as the source to read a tar archive from stdin and extract it to a directory destination in a container. Use '-' as the destination to stream a tar archive of a container source to stdout. Build step 'Execute shell' marked build as failure Warning: you have no plugins providing access control for builds, so falling back to legacy behavior of permitting any downstream builds to be triggered Finished: FAILURE` 

我也想更改容器的ID和容器的名称,但是我已经查看了docker文档,我还没有find办法做到这一点?

我对jenkins没有任何经验,但对于docker专家的特点,我可以尝试帮助你。

要将文件复制到正在运行的 Docker容器中,您需要按照以下方式进行操作:

 docker cp foo.txt mycontainer:/foo.txt docker cp mycontainer:/foo.txt foo.txt 

请参阅: 将文件从主机复制到Docker容器

如果您想在创buildDocker镜像时将其复制,则需要按照以下步骤执行(在Dockerfile中):

 COPY \$foo /quux # COPY $foo /quux 

请参阅: https : //docs.docker.com/engine/reference/builder/

至于容器ID,我相信你不能直接设置这些,而且你也不需要像在Docker中那样,可以在我处理的每个实例中用IDreplace容器的名称。

如果你想重命名一个运行 docker容器的docker你想使用:

 docker rename [OPTIONS] OLD_NAME NEW_NAME 

请参阅: https : //docs.docker.com/engine/reference/commandline/rename/

否则,您可以使用以下命令启动具有特定名称的容器:

 docker run --name containername mysql 

希望这可以帮助 :)