docker安装与基本使用

安装(官网更清楚):

  • centos:
    sudo yum remove docker \
                      docker-client \
                      docker-client-latest \
                      docker-common \
                      docker-latest \
                      docker-latest-logrotate \
                      docker-logrotate \
                      docker-engine
    sudo yum install -y yum-utils
    sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
    
  • ubuntu:
    # 卸载所有冲突的包
    for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt-get remove $pkg; done
    
    # 设置存储库
    # Add Docker's official GPG key:
    sudo apt-get update
    sudo apt-get install ca-certificates curl
    sudo install -m 0755 -d /etc/apt/keyrings
    sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
    sudo chmod a+r /etc/apt/keyrings/docker.asc
    
    # Add the repository to Apt sources:
    echo \
      "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \
      $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
      sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    sudo apt-get update
    
    # 安装最新docker
    sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
    

基本使用

a)说明:一个开源应用容器引擎基于go语言
b)原理
	i.Docker由特殊的文件系统叠加而成
	ii.最低端是bootfs使用系统bootfs(bootloader(引导加载程序)和kernel(内核))
c)作用:可以让开发者打包他们的应用以及一些依赖包到一个轻量级可移植的容器中发布到任何linux中,也可以实现虚拟化
d)优点:快速,一致地交付您的应用程序,响应式部署和扩展,在同一硬件上运行更多工作负载
e)应用:web自动化打包和发布,在服务型环境部署
f)安装应用
	i.docker search ‘镜像名字’ 查看是否可以拉取镜像
	ii.docker images 查看下载好的镜像
	iii.docker pull imageName:lastest 拉取最新的镜像
g)运行容器(mysql为例子)
	i.docker run -d -p 3306:3306 --privileged=true -v /usr/local/mysql/log:/var/log/mysql -v /usr/local/mysql/data:/var/lib/mysql -v /usr/local/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=root  --name mysql mysql:latest
	ii.-i 保持容器运行 退出后结束
	iii.-d 后台运行,退出后不结束
	iv.-t 为容器重新分配一个伪终端
	v.-id创建的容器一般是守护试容器 -it创建的容器一般是交互式容器
	vi.-p 3306:3306 端口映射 
	vii.Docker -update --restare=always containerName-已经运行的容器开启开机自启动
	viii.-restare=always 启动docker同时启动它
	ix.Docker ps 查看安装好的镜像
	x.systemctl enable docker.service 设置docker自启动哦
	xi.systemctl list-unit-files | grep enable 查看自启动
	xii.docker update containerId--restart=always 设置镜像自启动
h)进入容器
	i.docker exec ‘容器名/容器id’ /bin/bash/ 
i)退出容器
	i.exit
j)数据卷(作用)
	i.容器之间数据交换
	ii.容器数据持久化(防止删除容器数据也跟着删除)
	iii.外部机器与容器间接通讯
k)数据卷(操作)
	i.创建启动容器时使用-v 宿主机目录 : 容器目录
		1.可以挂在多个数据卷(多个-v)
		2.目录必须是绝对路径
		3.目录不存在会自动创建
l)数据卷容器(新建容器)
	i.创建一个容器让其他容器继承它(--volume-from)
	ii.通过简单方式创建数据卷
m)docker system prune 清理磁盘,关闭的容器,无用的数据卷和容器
n)进行打标签docker tag mysql:lateat diyImages:divTag
o)进行拉取对应的镜像 docker pull 账户/镜像:tag
p)清除none镜像docker rmi $(docker images -f "dangling=true" -q)

docker compose基本使用

i.安装docker-compose
ii.在github下载二进制文件,以上安装方法安装内置(跳过)
iii.移动到usr/local/bin中设置权限chmod 777 docker-compose
iv.编辑docker-compose.yml(文件:这是所有容器的运行配置文件,语法下期讲……)
a)docker-compose -h # 查看帮助
b)docker-compose up # 启动所有docker-compose服务
c)docker-compose up -d # 启动所有docker-compose服务并后台运行
d)docker-compose down # 停止并删除容器、网络、卷、镜像。
e)docker-compose exec yml里面的服务id # 进入容器实例内部 docker-compose exec docker-compose.yml文件中写的服务id /bin/bash
f)docker-compose ps # 展示当前docker-compose编排过的运行的所有容器
g)docker-compose top # 展示当前docker-compose编排过的容器进程
h)
i)docker-compose logs yml里面的服务id # 查看容器输出日志
j)docker-compose config # 检查配置
k)docker-compose config -q # 检查配置,有问题才有输出
l)docker-compose restart # 重启服务
m)docker-compose start # 启动服务
n)docker-compose stop # 停止服务

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值