docker简单使用

扫码查看

一、安装docker

# SET UP THE REPOSITORY
# 配置 Docker 的官方软件源(并默认使用稳定版,其它版本请参考官方文档)
sudo yum -y install device-mapper-persistent-data lvm2 yum-utils
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

# INSTALL DOCKER ENGINE - COMMUNITY
# 安装 Docker CE - 社区版
sudo yum -y install docker-ce docker-ce-cli containerd.io

# 将当前用户加入 Docker 用户组
# 加入 Docker 用户组的用户,在执行 Docker 相关命令时,不再需要键入 sudo 以提权
sudo usermod -aG docker ${USER}

# Start Docker - 启动 Docker
sudo systemctl start docker

# 设置 Docker CE 开机自启(可选)
sudo systemctl enable docker

# 安装 Dokcer Compose 编排工具(如果没有安装的话)
sudo yum -y install epel-release
sudo yum -y install python-pip
sudo pip install docker-compose

MacOS可以通过brew安装brew cask install docker

二、配置镜像加速器

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": [
    "https://dockerhub.azk8s.cn",
    "https://reg-mirror.qiniu.com"
  ]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

三、下载使用镜像

1.搭建一个web服务器,拉取一个centos镜像

docker run -p 80 --name web -i -t centos /bin/bash

2.安装nginx服务器

执行rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
再执行yum install -y nginx
启动nginxnginx
如果出现无法安装的情况试试systemctl restart docker
可以执行ctrl+P+Q切换到后台,通过docker ps -a查看随机分配的端口,通过浏览器访问即可。

四、构建镜像

1.创建Dokcerfile文件

mkdir dockerfile_test
cd dockerfile_test/
touch Dockerfile
nano Dockerfile

编写Dockerfile文件

FROM centos:7
MAINTAINER test "test@gmail.com"
RUN rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
RUN yum install -y nginx
EXPOSE 80

2.构建镜像

# docker build -t registry.cn-hangzhou.aliyuncs.com/<命名空间>/<应用镜像名>:<镜像版本> .
docker build -t="test/docker_demo:v1" .
# 这个时候查看本地已经有镜像了 docker images

3.将镜像推送到远程仓库

# 登录到阿里云控制台
https://cr.console.aliyun.com/cn-hangzhou/instances/repositories
# 创建命名空间
https://cr.console.aliyun.com/cn-hangzhou/instances/namespaces
# 获取访问凭证
https://cr.console.aliyun.com/cn-hangzhou/instances/credentials
# 登录阿里云的镜像仓库
docker login --username=<阿里云登录账号> registry.cn-hangzhou.aliyuncs.com
# 推送镜像
docker push registry.cn-hangzhou.aliyuncs.com/<命名空间>/<应用镜像名>:<镜像版本>

五、停止、删除docker容器和镜像

# 列出所有的容器ID
docker ps -aq
# 停止所有的容器
docker stop $(docker ps -aq)
# 删除所有的容器
docker rm $(docker ps -aq)
# 删除所有的镜像
docker rmi $(docker images -q)

参考:
https://juejin.im/post/5cacbfd7e51d456e8833390c#heading-12
https://yeasy.gitbooks.io/docker_practice/content/

01-07 06:46
查看更多