Docker安装及使用

安装及使用Docker

安装docker

yum install docker
systemctl enable docker
systemctl start docker
sudo usermod -aG docker cooper

pull镜像

docker run hello-world
docker pull centos
docker pull centos:7.2.1511

images

docker images -a

docker commit … //save container as image
docker commit –author “cooper@foxmail.com” –message “centos7 commit” {cont_name} {img_name}:{tag}
docker build -t nginx:v3 //Read cur dir Dockerfile(FROM,RUN)
docker build - < Dockerfile
cat Dockerfile | docker build -

//save image to file
docker save centos | gzip > centos-latest.tar.gz
docker load -i centos-latest.tar.gz

docker rmi {img_name}

container

docker ps -a

//interactive(stop on exit)
docker run -it centos:latest bash
docker run -it –name “centos0” centos:latest bash

docker run -it –rm centos:latest bash
docker run -it –rm centos:latest /bin/echo ‘Hello world’

//deamon
docker run –name “centos0” -d centos:latest /bin/sh -c “while true; do echo hello world; sleep 1; done”
docker attach centos0

//interactive
docker run –name “centos0” -t centos:latest /sbin/init
docker exec -it centos0 /bin/bash

docker ps
docker logs {cont_name}

docker rm {cont_name}

docker start/stop/restart {cont_name}
docker start -i {cont_name}
docker pause/unpause

//import and export container to file

docker export 7691a814370e > ubuntu.tar
cat ubuntu.tar | docker import - test/ubuntu:v1.0

docker rename centos_old centos_new

/var/lib/docker/

docker run --name "centos0" -t centos:latest /sbin/init
docker exec -it centos0 /bin/bash

docker save centos | gzip > centos-latest-7.3.1611.tar.gz
docker load -i centos-latest-7.3.1611.tar.gz

yum install wget
   wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
   mv CentOS7-Base-163.repo /etc/yum.repos.d/
     yum clean all
     yum makecache

yum install iproute
yum install openssh-server
systemctl start sshd
passwd root/csg123456
     ssh root@192.168.123.2

docker commit --author "yupengqu@tencent.com" --message "centos7 commit"  centos0 centos7.3-sshd:v1.0

测试Dockerfile
vi Dockerfile

FROM centos

RUN mkdir /tmp/foo
RUN dd if=/dev/zero of=/tmp/foo/bar bs=1048576 count=100
RUN rm /tmp/foo/bar
RUN rm /tmp/foo

docker build -t centos7.3-sshd:v1.0

host<->guest port mapping

docker -P
docker -p

docker –link

data volume

docker run -v
docker run –name “centos0” -t -v /home/docker-CentOS/host_datav:/guest_datav centos:latest /sbin/init
docker inspect centos0

metrics

numactl –hardware
docker run –name “centos0” -c 1024 –cpuset-cpus=0,2,4,6 -m 8g -t centos:latest /sbin/init
echo “512” > /cgroup/cpu/docker/$CONTAINER_ID/cpu.shares

device

docker run –name “centos0” -c 1024 –cpuset-cpus=0,2,4,6 -m 8g –device=/dev/sdg:/dev/sdx -t centos:latest /sbin/init
docker run –name “centos0” -c 1024 –cpuset-cpus=0,2,4,6 -m 8g -v /dev/sdh:/dev/sdx -t centos:latest /sbin/init

add disk device

docker volume create –driver local –name dsdy –opt type=ext4 –opt device=/dev/sdy
docker run –name “centos0” -c 1024 –cpuset-cpus=0,2,4,6 -m 8g -v dsdy:/dev/sdy -t centos:latest /sbin/init

docker volume cmd

docker volume create Create a volume
docker volume inspect Display detailed information on one or more volumes
docker volume ls List volumes
docker volume prune Remove all unused volumes
docker volume rm Remove one or more volumes

安装docker后,缺少docker0网桥,手动创建,才能启动docker

brctl addbr docker0
ip addr add 192.168.123.1/24 dev docker0
ip link set dev docker0 up

ip link set dev docker0 down
ip addr del 192.168.123.1/24 dev docker0
ip addr add 192.168.123.1/24 broadcast + dev docker0
ip link set dev docker0 up

网卡相关操作

yum install bridge-utils

除了默认的 docker0 网桥,用户也可以指定网桥来连接各个容器。

在启动 Docker 服务的时候,使用 -b BRIDGE或–bridge=BRIDGE 来指定使用的网桥。

如果服务已经运行,那需要先停止服务,并删除旧的网桥。

sudoservicedockerstop sudo ip link set dev docker0 down
$ sudo brctl delbr docker0

然后创建一个网桥 bridge0。

sudobrctladdbrbridge0 sudo ip addr add 192.168.5.1/24 dev bridge0
$ sudo ip link set dev bridge0 up

查看确认网桥创建并启动。

$ ip addr show bridge0
4: bridge0:

Docker 是一种容器化技术,可以帮助开发者快速构建、打包、发布和运行应用程序的环境。在安装使用 Docker 之前,需要先了解 Docker 的基本概念。 Docker 的基本概念 1. 镜像(Image):Docker 镜像是一个只读的模板,包含了运行应用程序所需要的所有文件、配置和依赖项。 2. 容器(Container):Docker 容器是 Docker 镜像的运行实例,可以被创建、启动、停止、删除、暂停等操作。 3. 仓库(Repository):Docker 仓库是用于存储和分享 Docker 镜像的地方,可以是公共的(如 Docker Hub)或私有的(如自己的服务器)。 Docker安装步骤 1. 安装 Docker 在 Ubuntu 系统上,可以使用以下命令安装 Docker: ``` $ sudo apt-get update $ sudo apt-get install docker.io ``` 安装完成后,可以使用以下命令检查 Docker 是否正确安装: ``` $ docker --version ``` 2. 配置 Docker安装 Docker 后,需要将当前用户添加到 Docker 用户组中,以便无需使用 sudo 命令也可以运行 Docker 命令: ``` $ sudo usermod -aG docker your_username ``` 需要重新登录才能使修改生效。 3. 运行 Docker 可以使用以下命令启动 Docker: ``` $ sudo systemctl start docker ``` 可以使用以下命令检查 Docker 是否正在运行: ``` $ sudo systemctl status docker ``` Docker 的基本使用 1. 拉取镜像 可以使用以下命令从 Docker 仓库中拉取镜像: ``` $ docker pull image_name ``` 例如,拉取 Ubuntu 镜像: ``` $ docker pull ubuntu ``` 2. 运行容器 可以使用以下命令运行容器: ``` $ docker run image_name ``` 例如,运行 Ubuntu 容器: ``` $ docker run ubuntu ``` 默认情况下,容器会在后台运行,并显示容器 ID。 可以使用以下命令运行交互式容器: ``` $ docker run -it image_name ``` 例如,运行交互式 Ubuntu 容器: ``` $ docker run -it ubuntu ``` 3. 列出容器 可以使用以下命令列出所有正在运行的容器: ``` $ docker ps ``` 可以使用以下命令列出所有容器: ``` $ docker ps -a ``` 4. 停止容器 可以使用以下命令停止容器: ``` $ docker stop container_id ``` 例如,停止容器 ID 为 123 的容器: ``` $ docker stop 123 ``` 可以使用以下命令停止所有正在运行的容器: ``` $ docker stop $(docker ps -q) ``` 5. 删除容器 可以使用以下命令删除容器: ``` $ docker rm container_id ``` 例如,删除容器 ID 为 123 的容器: ``` $ docker rm 123 ``` 可以使用以下命令删除所有容器: ``` $ docker rm $(docker ps -aq) ``` 6. 删除镜像 可以使用以下命令删除镜像: ``` $ docker rmi image_name ``` 例如,删除 Ubuntu 镜像: ``` $ docker rmi ubuntu ``` 可以使用以下命令删除所有镜像: ``` $ docker rmi $(docker images -q) ``` 以上是 Docker 的基本安装使用方法,更多高级用法可以参考 Docker 官方文档。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值