IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Docker零基础入门 -> 正文阅读

[系统运维]Docker零基础入门

1、linux下载docker

1.1环境检查

1、查看linux系统环境

cat /etc/os-release\

2、查看系统内核

uname -r

1.2环境准备

1、卸载旧版本

sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

2、安装工具包

sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
// 配置yum使用阿里云镜像地址(建议使用该配置,国外比较慢)
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3、更新yum

yum makecache fast
yum updates

1.3 安装docker

sudo yum install docker-ce docker-ce-cli containerd.io

【注意】配置docker下载镜像,为国内地址

# 1)使用命令配置
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://4zgajege.mirror.aliyuncs.com"]
}
EOF
# 2)使用手动配置
# 到/etc/docker目录下创建daemon.json文件,在文件中添加配置
{
  "registry-mirrors": ["https://4zgajege.mirror.aliyuncs.com"]
}

加载配置文件重启docker

sudo systemctl daemon-reload
sudo systemctl restart docker

2、docker基础命令

2.1启动、重启、停止docker

# 启动docker
systemctl start docker 
service docker start
# 重启docker
systemctl restart docker
service docker restart
# 停止docker 
systemctl stop docker
service docker stop

2.2 卸载docker

# 卸载docker
yum remove docker-ce docker-ce-cli containerd.io
# 删除资源
rm -rf /var/lib/docker

2.3 查看docker信息命令

docker version
docker info 
docekr --help

3、docker镜像命令

# 查看镜像
docker images
# 搜索镜像
docker search 镜像名 
docker search mysql
# 下载镜像,指定版本【tag】下载
docker pull mysql:5.7 
# 删除镜像
docker rmi -f 镜像id  
# 删除所有进行,通过命令所搜出所有docker镜像,传递参数删除
docker rmi -f ${docker images -aq}

4、docker容器命令

【注意】容器后台运行,需要一个前台进行,不然docker会认为没有提供服务,自动停止容器

4.1镜像运行

 # 运行镜像
 docker run 镜像名
 docker run centos
 # 带参数运行命令
 docker run [可选参数] images
   --name=  # 容器名字
   -d       	# 后台运行
   -it			# 交互运行,运行后直接进入容器
   -p			# 指定端口映射,应主机端口:容器端口
   -P			# 随机指定端口
 # 运行centos
 docker run -it centos /bin/bash

容器操作

 # 1)停止容器退出
 exit  
 # 2)不停止容器退出
 Ctrl+P+Q	

4.2 容器查看

# 查看正在运行容器
docker ps
# 查看所有容器,运行过的容器
docker ps -a

4.3 删除容器

# 删除容器
docker rm 容器id
# 强制删除所有容器
docker rm -f ${docker ps -aq}

4.4 启动、停止容器

docker start 容器id
docker restart id
docker stop id
docker kill id

4.5 查看容器运行日志

# 查看容器运行日志
docker logs 容器id
# 查看容器进程信息
docker top id
# 查看容器详细信息
docker inspect id

4.6 进入容器

# 直接进入容器,打开新终端
docker exec -it id /bin/bash
# 进入正在容器正在运行终端
docker attach 容器id

4.7拷贝容器文件到主机

docker cp 容器id:容器内路径 	目的主机路径

5、容器数据卷

通过卷挂载,实现删除容器,在主机中依然可以保留数据

5.1mysql示例

1、普通启动mysql
启动mysql需要配置mysql的连接用户、密码,这里用户名为root

docker run --name mysql -d -it -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root mysql:5.7 

2、通过卷挂载启动mysql

docker run -d -p 3306:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql01 mysql:5.7

【参数说明】

-v 卷挂载, 主机地址:容器挂载地址
-d 后台运行
-e配置mysql密码

5.2匿名挂载、具名挂载

# 匿名挂载,不写卷名,nginx为镜像名
docker run -d -P -v /etc/nginx nginx
# 具名挂载,juming就是主机中的卷名
docker run -d -P -v juming:/etc/nginx ngxin

5.3查看卷

# 查看所有卷
docker volums ls
# 查看这个卷信息
docker volum inspect 卷名

6、制造进行

步骤:
1、创建Dockerfile文件,【注意Dockerfile,没有后缀】
2、为Dockerfile文件写创建镜像命令
3、docker build 生成镜像
制造tomcat的Dockerfile文件内容

# 基于centos构建
FROM centos
#设置作者信息
MAINTAINER luhuafa<1050973864@qq.com>

# 拷贝readme.txt 文件到容器/usr/local目录下
COPY readme.txt /usr/local/readme.txt

# 添加jdk、tomcat压缩包到容器,会自动解压
ADD jdk-8u311-linux-x64.tar.gz /usr/local/
ADD apache-tomcat-9.0.54.tar.gz /usr/local/

# 给容器下载vim命令
RUN yum -y install vim

# 设置环境变量,容器启动后自动进入/usr/local目录
ENV MYPATH /usr/local
# 设置工作空间
WORKDIR $MYPATH

# 配置java环境变量
ENV JAVA_HOME /usr/local/jdk1.8.0_311
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
# 配置tomcat环境变量
ENV CATALINA_HOME /usr/local/apache-tomcat-9.0.54
ENV CATALINA_BASH /usr/local/apache-tomcat-9.0.54
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME:$CATALINA_BASH/bin

# 暴露tomcat端口
EXPOSE 8080

# 写命令,启动容器的时候启动tomcat,通过&&拼接命令 配置日志目录
CMD /usr/local/apache-tomcat-9.0.54/binstartup.sh && tail -F /usr/local/apache-tomcat-9.0.54/bin/logs/catalina.out

build命令
【注意】后面有个"."代表当前目录 ,在当前目录构建镜像

docker  build -f /home/docker-test/Dockerfile -t xiaolu/centos:1.0 .
参数说明
-f 配置文件,配置文件使用官方命名Dockerfile,则不用-f,指定配置文件,会自动搜索Dockerfile文件来构建镜像
-t 目标
  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-11-12 19:59:45  更:2021-11-12 20:01:31 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 23:20:32-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码