您现在的位置是:主页 > news > 做网站必须要公司才能做吗/网站内容优化方法

做网站必须要公司才能做吗/网站内容优化方法

admin2025/5/24 10:24:20news

简介做网站必须要公司才能做吗,网站内容优化方法,永康做网站,盘锦市网站建设Docker一、前言什么是DockerDocker是一个应用容器平台。为什么是Docker1合作开发的时候,在本机可以跑,在别人的电脑跑不起来2.服务器自己的程序挂了,结果发现是别人程序出了问题把内存吃完了,自己程序因为内存不够就挂了3.公司要弄…

做网站必须要公司才能做吗,网站内容优化方法,永康做网站,盘锦市网站建设Docker一、前言什么是DockerDocker是一个应用容器平台。为什么是Docker1合作开发的时候,在本机可以跑,在别人的电脑跑不起来2.服务器自己的程序挂了,结果发现是别人程序出了问题把内存吃完了,自己程序因为内存不够就挂了3.公司要弄…

Docker

87f11185203fbe23a5b8fe28ba75ebee.png


一、前言

什么是Docker

Docker是一个==应用容器平台==。

为什么是Docker

1合作开发的时候,在本机可以跑,在别人的电脑跑不起来

2.服务器自己的程序挂了,结果发现是别人程序出了问题把内存吃完了,自己程序因为内存不够就挂了

3.公司要弄一个活动,可能会有大量的流量进来,公司需要再多部署几十台服务器

Docker和虚拟机区别

虚拟机是携带系统的,一些本身很小的应用程序因为系统会变得非常大,非常笨重

Docker是不携带操作系统的,所以Docker的应用非常轻巧

传统虚拟机

Docker容器

磁盘占用

几个GB到几十个GB左右

几十MB到几百MB左右

CPU内存占用

虚拟操作系统非常占用CPU和内存

Docker引擎占用极低

启动速度

(从开机到运行项目)几分钟

(从开启容器到运行项目)几秒

安装管理

需要专门的运维技术

安装、管理方便

应用部署

每次部署都费时费力

从第二次部署开始轻松简捷

耦合性

多个应用服务安装到一起,容易互相影响

每个应用服务一个容器,达成隔离

系统依赖

需求相同或相似的内核,目前推荐是Linux

Docker核心

·镜像:一个镜像代表一个应用环境,他是一个只读的文件,如mysql镜像,tomcat镜像,nginx镜像等

·容器:镜像每次运行之后就是产生一个容器,就是正在运行的镜像,特点就是可读可写

·仓库:用来存放镜像的位置,类似于maven仓库,也是镜像下载和上传的位置

·dockerFile:docker生成镜像配置文件,用来书写自定义镜像的一些配置

·tar:一个对镜像打包的文件,日后可以还原成镜像

二、安装(Ubuntu)

1.更新ubuntu的apt源索引

sudo apt-get update

2.安装包允许apt通过HTTPS使用仓库

sudo apt-getinstall \
  apt-transport-https \
  ca-certificates \
  curl \
  software-properties-common

3.添加Docker官方GPG key

curl -fsSL https://download.docker.com/linux/ubuntu/gpg| sudo apt-key add -

4.设置Docker稳定版仓库

sudoadd-apt-repository \
  "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) \
  stable"

5.添加仓库后,更新apt源索引

sudo apt-get update

6.安装最新版Docker CE(社区版)

sudo apt-getinstall docker-ce

7.检查Docker CE是否安装正确

sudo docker runhello-world

8.为了避免每次命令都输入sudo,可以设置用户权限,执行后须注册重新登陆

sudo usermod -a -Gdocker $USER

三、阿里云镜像加速服务

1.注册阿里云账号并搜索镜像加速器

2.通过修改daemon配置文件/etc/docker/daemon.json来使用加速器

sudomkdir-p /etc/docker
sudotee /etc/docker/daemon.json <{
 "registry-mirrors": ["https://sr5ff4iz.mirror.aliyuncs.com"]
}
EOF
# cat /etc/docker/daemon.json 查看是否配置成功sudo systemctl daemon-reload
sudo systemctl restart docker

四、常用命令

4.1、服务命令

#启动dockersudoservice docker start#停止dockersudoservice docker stop#重启dockersudoservice docker restart

4.2、辅助命令

# 1.安装完成辅助命令
docker version ---查看docker的信息
docker info ---查看更详细的信息
docker --help---帮助命令

4.3、Images镜像命令

# 1、查看本机中所有镜像
docker images ---列出本地所有镜像-a列出所有镜像(包含中间映像层)
-q只现实镜像id
# 2、搜索镜像
docker search [options] 镜像名---区dockerhub上查询当前镜像-s指定值列出收藏数不少于指定值的镜像--no-trunc现实玩着的镜像信息

# 3、从仓库下载镜像
docker pull 镜像名[:TAG|@DIGEST] ---下载镜像# 4、删除镜像
docker rmi 镜像名---删除镜像-f强制删除

4.4、Contrainer 容器命令

4.4.1、基本命令(容器外操作)

# 1.运行容器
docker run 镜像名---镜像名新建并启动容器--name别名为容器起一个名字-d启动守护式容器(在后台启动容器)
-p映射端口号:原始端口号指定端口号启动例:docker run -it--name myTomcat-p8888:8888 tomcat
docker run -d--name myTomcat-P tomcat
#2.查看运行的容器
docker ps  -列出所有正在运行的容器-a正在运行的和历史运行过的容器-q静默模式,只显示容器编号#3.停止|关闭|重启容器
docker start容器名字或者容器id --开启容器
docker restart容器名或者容器id --重启容器
docker stop容器名或者容器id --正常停止容器运行
docker kil1 容器名或者容器id --立即停止容器运行#4.删除容器
docker rm-f容器id和容器名
docker rm-f$(docker ps -aq)-删除所有容器#5.查看容器内进程
docker top容器id或者容器名-查看容器内的进程#6.查看查看容器内部细节
docker inspect 容器id--查看容器内部细节#7.查看容器的运行日志
docker logs[0PTIONS]容器id或容器名—-查看容器日志-t加入时间戳

docker类ctf题

GACTF 2020 MISC trihistory WP

按题目所要求的,拉下来后进去看看(这里发现有80端口开着,映射后没找到东西)

docker pull impakho/trihistory:latest
docker run impakho/trihistory:latest
docker exec -it (容器ID) /bin/bash

用命令 find / -name *flag* 寻找可用信息f8c93cce1ae7230b1950b28e1b917367.png

在/var/www/html/ 下有flag.html然而提示flag被删了

b184977b8cef418dd5eca01caa728a7c.png使用命令 docker history impakho/trihistory:latest 可以查看镜像历史:

296809952208ae98491a8951146cb702.png

第三行是十分可疑的地方,结合那个flag.html我们可以知道应该需要在该层的上一层寻找删除的文件(原理见开头)

命令 docker inspect (容器ID) 显示镜像详情,这里面有我们需要的的上一层文件地址:

"Data": {                "LowerDir": "/var/lib/docker/overlay2/0f56c1e70b7abdff23d4af0086b6785f36452e353b1f72241350a8a16a7f631a/diff:/var/lib/docker/overlay2/74937ae7d64f4e71ca1d21207cdb0351c9061e52c24b96d7ef1bb5390e922a8b/diff:/var/lib/docker/overlay2/5b2382d04d3cecdf024c55226ec76ac09528afd876704bd2060902de8c930d4a/diff:/var/lib/docker/overlay2/18e504d7953b6a3e83097c7371463d55c6f84a2cf9631ebca680f015a994fa30/diff:/var/lib/docker/overlay2/78d32b8efe559ada64ddaf40c295f7f628d6f66bc2bc608fd1659a544993a36d/diff:/var/lib/docker/overlay2/5b2e0f0718d91f8cfe7c836aeac0d62bf9ca3dd51a9565b3edfa5011f570b973/diff:/var/lib/docker/overlay2/4e9e5307c9c16d506a6f453c6cca6bb95bf6478f867edcad4758ef75996e3bb2/diff:/var/lib/docker/overlay2/11a484c8c600f7f4e7da7c10c746af366949fd54dbead18c714f690a3b988542/diff:/var/lib/docker/overlay2/8687aace973f08a9ca2756aaba3b4e41f982cf52b33cbf12d552c62f63953707/diff",                "MergedDir": "/var/lib/docker/overlay2/e1295a59839727e2c0f3dde843d298cf53aaf404e08f6f6612f682686ab0484c/merged",                "UpperDir": "/var/lib/docker/overlay2/e1295a59839727e2c0f3dde843d298cf53aaf404e08f6f6612f682686ab0484c/diff",                "WorkDir": "/var/lib/docker/overlay2/e1295a59839727e2c0f3dde843d298cf53aaf404e08f6f6612f682686ab0484c/work"            }

到目录下有个git文件夹,接下来我们就比较熟悉了,git config 后找到删除的文件checkout即可

e19b6149e51f86d606e8c3b62eb36f22.png

可以发现有swp文件.flag.html.swp,vim -r flag.html 恢复后即是flag