Basic Usage of Docker
Overview
使用脚本快速安装
安装 Docker:
1curl -fsSL https://get.docker.com -o get-docker.sh && sudo sh get-docker.sh
安装 docker-compose
1sudo curl -L "https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m)" \
2-o /usr/local/bin/docker-compose
3
4# 给Docker Compose 执行权限
5sudo chmod +x /usr/local/bin/docker-compose
6
7# 查看Docker和Docker Compose的版本
8sudo docker version
9sudo docker-compose version
设置阿里云镜像
1sudo mkdir -p /etc/docker
2sudo tee /etc/docker/daemon.json <<-'EOF'
3{
4 "registry-mirrors": ["https://oojjt1xs.mirror.aliyuncs.com"]
5}
6EOF
7sudo systemctl daemon-reload
8sudo systemctl restart docker
阿里云镜像源需要个人注册阿里云账号之后才能使用,这里我已经注册过了。
三个概念
Docker三个基本概念:Registry注册中心,Image镜像,Container容器
Registry包含多个Repo(仓库)和Tag(标签),从Registry下载Image的方式是pull <仓库名>:<标签名>,如pull ubuntu:16.04
Image是一个静态概念,相当于面向对象中的类,类不能直接使用,需要实例化。
Container是一个动态概念,相当于面向对象中的实例化,启动镜像生成容器就是实例化类的过程。只有容器才能被用户使用。
查看命令
命令 | 描述 |
---|---|
docker images |
列出本地镜像 |
docker ps |
列出容器 |
创建容器
-
创建一个新的容器,并进入交互模式的终端
1docker run -it centos:latest /bin/bash
-
后台运行容器,并设置端口映射
1 docker run -d -p 3000:80 centos:latest
-
进入一个正在后台运行的容器
1docker attach [container-id]
退出容器
-
退出容器
1exit
-
退出容器并保持容器后台运行
1Ctrl + p + q
从容器创建新的镜像
-
首先拿到容器 ID ,然后使用如下命令创建镜像:
1docker commit -a "镜像作者名字" -m "提交时的说明文字" [container-id] [image-name]:[tag]
WordPress 启动方式
-
创建容器
1 docker run -it -p 3000:80 -p 4000:8888 my_wp:v1 /bin/bash
-
软件启动
1/etc/init.d/nginx start 2 3/etc/init.d/mysqld start 4 5/etc/init.d/memcached start 6 7/etc/init.d/php-fpm-72 start 8 9/etc/init.d/bt start
-
退出容器,并保持容器在后台运行
1 Ctrl + p + q