doker实战
2021-12-25 14:30
507 查看
docker实战
docker 安装
移除以前docker相关包
sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
配置yum源
sudo yum install -y yum-utils
sudo yum-config-manager \ --add-repo \ http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安装docker
sudo yum install -y docker-ce docker-ce-cli containerd.io
启动docker
systemctl enable docker --now
配置加速
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://82m9ar63.mirror.aliyuncs.com"], "exec-opts": ["native.cgroupdriver=systemd"], "log-driver": "json-file", "log-opts": { "max-size": "100m" }, "storage-driver": "overlay2" } EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
docker 命令
拉去镜像
# 默认最新版 docker pull nginx # 指定版本 docker pull nginx:1.20.1 # 查看镜像 docker images
启动容器
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
比如,启动nginx应用容器,并映射88端口
# -d:后台运行 # -p:端口映射 # --restart=always: 开机自启 docker run --name=mynginx -d --restart=always -p 88:80 nginx
查看正在运行的容器
docker ps
停止容器
docker stop 容器id/名字
再次启动
docker start 容器id/名字
删除停止的容器
docker rm 容器id/名字 docker rm -f mynginx #强制删除正在运行中的
应用开机自启
docker update 容器id/名字 --restart=always
修改容器内容
进容器内部修改
# 进入容器内部的系统,修改容器内容 docker exec -it 容器id /bin/bash
挂载数据到外部修改
docker run --name=mynginx \ -d --restart=always \ -p 88:80 -v /data/html:/usr/share/nginx/html:ro \ nginx # 修改页面只需要去 主机的 /data/html
提交改变
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]] docker commit -a "author" -m "首页变化" 341d81f7504f nginx:v1.0
推送远程仓库
docker tag local-image:tagname new-repo:tagname docker push new-repo:tagname
# 把旧镜像的名字,改成仓库要求的新版名字 docker tag nginx:v1.0 author/nginx:v1.0 # 登录到docker hub docker login # 推送 docker push author/nginx:v1.0 docker logout(推送完成镜像后退出) # 别的机器下载 docker pull author/nginx:v1.0
docker部署项目
先写一个spring boot项目,使用maven打包
编写Dockerfile文件
FROM openjdk:8-jdk-slim LABEL maintainer=author COPY target/*.jar /app.jar ENTRYPOINT ["java","-jar","/app.jar"]
将 target 目录和 Dockerfile 文件放在一个文件夹里上传到服务器(可以把target目录里除了jar包外的文件都删除)
构建镜像
docker build -t java-demo:v1.0 .
启动容器
docker run -d -p 8080:8080 --name myjava-app java-demo:v1.0
相关文章推荐
- 【springmvc+mybatis项目实战】杰信商贸-8.生产厂家修改
- 网站后端.Flask.实战-社交博客开发-资料编辑?
- Maven开源项目实战教程,从Maven私服到Maven中央仓库示例教程
- Python 实战 在线教育 (一) 初始化
- 基于QT平台的手持媒体播放器项目实战视频教程下载
- Spark API编程动手实战-07-join操作深入实战
- 原生JS实战:经典贪吃蛇(开局10倍速度,来看看你最高能得多少分!)
- Java内存区域与内存溢出异常-异常实战
- Python实战之多线程编程threading.Thread
- SSH项目实战注意点
- Android实战笔记(一)
- 股票分析实战
- 基于 abp vNext 和 .NET Core 开发博客项目 - Blazor 实战系列(一)
- 【js杂记】js、jquery实战杂记 1
- 实战Docker部署tomcat发布环境
- Ionic 3 项目实战------自定义插件
- Node.js项目实战-构建可扩展的Web应用(第一版):3 Node.js基于Mocha的测试驱动开发和行为驱动开发
- Hadoop实战-初级部分 之 HDFS
- Swift游戏实战-跑酷熊猫 12 与平台的碰撞
- MINA实战