docker入门之安装及使用

一 注册docker账号

  https://hub.docker.com/ 请注册账号及邮箱激活

二 安装

  注意:docker只支持linux系统,经排查windows安装的docker原理基本都是通过虚拟机

  我用的ubuntu20.0虚拟机

sudo apt update

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

  就是这么简单!

  接下来验证安装是否成功:

wbw@ubuntu:~$ docker -v
Docker version 20.10.7, build f0df350

wbw@ubuntu:~$ sudo systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2021-06-24 20:03:46 PDT; 7h ago

三 启动并使用

  3.1 搜索容器

sudo docker search ubuntu

  3.2 拉取容器

sudo docker pull ubuntu

  3.3 运行容器

docker run -it ubuntu
    加 -it 的目的是可以让你通过shell来操作他们。如果不加则是简单的把镜像放到容器并启动

进入shell后我们就可以在容器中进行操作了,比如在该ubuntu容器中新增apache服务器等,此处不做演示了。
(注意:ubuntu初始容器一般需要先apt update
/ upgrade一下)

  3.4 退出容器

//shell中直接exit
exit

四 管理

  4.1 容器列表

//活动中的容器

sudo docker ps

//非活动中的容器

sudo docker ps -a

//最新创建的容器

sudo docker ps -l //是字母l (latest)不是数字1

  4.2 启动容器

sudo docker start epic_aryabhata //docker start+容器id/容器名称 同时注意与docker run的区别

  4.3 停止正在运行的容器

sudo docker stop epic_aryabhata //docker stop+容器id/容器名称

  4.4 删除容器

sudo docker rm epic_aryabhata //docker rm+容器id/容器名称

五 docker仓库

  5.1 commit容器

sudo docker commit -m 'start' -a "ansirw" epic_aryabhata study/ubuntu
    此时用docker images命令可以看到我们多了一个repostry

  5.2 本机登录hub

sudo docker login -u ansirw
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

  5.3 修改tag

sudo docker tag study/ubuntu ansirw/ubuntu

  5.4 远程提交

sudo docker push ansirw/ubuntu

 

六 补充

  6.1 docker run和start的区别

  • docker run contain_name 只在第一次运行时使用,将镜像放到容器中,以后再次启动这个容器时,只需要使用命令docker start 即可。相当于执行了两步操作:将镜像放入容器中(docker create),然后将容器启动,使之变成运行时容器(docker start)。
  • docker start contain_name 的作用是,重新启动已存在的镜像。也就是说,如果使用这个命令,我们必须事先知道这个容器的ID,或者这个容器的名字,我们可以使用docker ps找到这个容器的信息。

  6.2 进入容器

    我们不能每一次都docker run -it,因为每一次的执行都会在本地拉取一个镜像容器。

    实际上我们这样操作:

wbw@ubuntu:~$ sudo docker start epic_aryabhata
epic_aryabhata
wbw@ubuntu:~$ sudo docker exec -it epic_aryabhata /bin/bash
root@be15c13a58ca:/# ls
bin dev home lib32 libx32 mnt proc run srv tmp var
boot etc lib lib64 media opt root sbin sys usr
root@be15c13a58ca:/#

    就这些了,希望大家相互学习,共同进步!

posted @ 2021-06-25 19:28  布叔喂丶  阅读(149)  评论(0编辑  收藏  举报