创建第一个docker image

本文详细介绍了如何使用Dockerfile创建Docker镜像,包括编写Dockerfile、构建镜像、上传镜像到仓库的全过程。同时,文章还演示了如何运行容器、检查容器状态及通过不同方式进入容器内部。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

安装启动好docker服务以后,尝试创建第一个docker image.

创建Dockerfile:

$ vi Dockerfile

FROM centos

RUN echo 'Hello, Docker!'

创建Image:

$ docker build -t archive.docker-registry.eecloud.net/alice/hellodocker .
$ docker images
REPOSITORY                                                        TAG                 IMAGE ID            CREATED             SIZE
archive.docker-registry.eecloud.net/alice/hellodocker     latest              9fe20369156b        35 minutes ago      202MB

上传image到仓库:

[root@okqvd docker]# docker push archive.docker-registry.eecloud.net/alice/hellodocker
The push refers to repository [archive.docker-registry.eecloud.net/alice/hellodocker]
d69483a6face: Preparing 
denied: requested access to the resource is denied

# 尝试用相同用户名登录后再上传
[root@okqvd docker]# docker login -u alice archive.docker-registry.eecloud.net
Password: 
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded
[root@okqvd docker]# docker push archive.docker-registry.eecloud.net/alice/hellodocker
The push refers to repository [archive.docker-registry.eecloud.net/alice/hellodocker]
d69483a6face: Preparing 
denied: requested access to the resource is denied
[root@okqvd docker]# docker build -t archive.docker-registry.eecloud.net/alice/hellodocker .
Sending build context to Docker daemon  2.048kB
Step 1/2 : FROM centos
 ---> 9f38484d220f
Step 2/2 : RUN echo 'Hello, Docker!'
 ---> Using cache
 ---> 9fe20369156b
Successfully built 9fe20369156b
Successfully tagged archive.docker-registry.eecloud.net/alice/hellodocker:latest

创建container:

[root@okqvd docker]# docker run -ti 9fe20369156b /bin/bash
[root@5f24685e0b54 /]# 

查询container是否启动成功:

[root@okqvd docker]# docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                      PORTS               NAMES
5f24685e0b54        9fe20369156b        "/bin/bash"         59 seconds ago      Exited (0) 21 seconds ago                       romantic_kirch

# 尝试守护态(-d 参数)运行
[root@okqvd docker]# docker run -ti -d 9fe20369156b /bin/bash
6001a3f57428d3830c4d5b58f921d69b6cc57a9b644b850dcc39feaaa21b5ebe
[root@okqvd docker]# docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
6001a3f57428        9fe20369156b        "/bin/bash"         3 seconds ago       Up 2 seconds                            hardcore_engelbart

进入container:

# 使用attach方式进入container,在退出时,会关闭当前container
[root@okqvd docker]# docker attach 6001a3f57428
[root@6001a3f57428 /]# 

# 使用docker exec -it方式,在退出时,当前container仍在后台运行
[root@okqvd docker]# docker exec -it 6001a3f57428 /bin/bash
[root@6001a3f57428 /]#

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值