当前位置: 首页 > news >正文

想搞一个自己的网站怎么做asp连接数据库做登录网站完整下载

想搞一个自己的网站怎么做,asp连接数据库做登录网站完整下载,上海装修设计公司排名,服装设计师培训学校文章目录 练习资料下载一、docker基础1. 基本概念2. docker常见命令3. 命令别名4. 数据卷 二、docker自定义镜像1. 了解镜像结构2. 了解Dockerfile3. 构建Dockerfile文件#xff0c;完成自定义镜像 三、网络1. docker常见网络命令2. docker自带虚拟网络3. 自定义网络 四、dock… 文章目录 练习资料下载一、docker基础1. 基本概念2. docker常见命令3. 命令别名4. 数据卷 二、docker自定义镜像1. 了解镜像结构2. 了解Dockerfile3. 构建Dockerfile文件完成自定义镜像 三、网络1. docker常见网络命令2. docker自带虚拟网络3. 自定义网络 四、docker快速部署项目1. 容器部署背景2. 部署项目(方案一麻烦)3. 使用DockerCompose部署项目(方案二推荐) 五、docker-compose安装 提示以下是本篇文章正文内容下面案例整理于【黑马程序员】 练习资料下载 链接https://pan.baidu.com/s/1l4Xqxo-eSc5WM8rk-OV1NQ 提取码bqxq 文章参考笔记 链接https://b11et3un53m.feishu.cn/wiki/MWQIw4Zvhil0I5ktPHwcoqZdnec?fromfrom_copylink 密码j.N?-4[ 一、docker基础 1. 基本概念 Docker是做什么的 Docker可以帮助我们下载应用镜像创建并运行镜像的容器从而快速部署应用。什么是镜像 将应用所需的函数库、依赖、配置等与应用一起打包得到的就是镜像我们也可以自定义镜像。什么是容器? 为每个镜像的应用进程创建的隔离运行环境就是容器每个容器是互相隔离的互不影响的。也可以简单的理解为每个容器就是一个简单的操作系统。什么是镜像仓库? 存储和管理镜像的服务就是镜像仓库。我们平时所下载的镜像都是从镜像仓库里面拉取下来的。 2. docker常见命令 docker命令官方地址 https://docs.docker.com/engine/reference/commandline/ 3. 命令别名 可以对常用的命令起别名可以更加简洁高效的使用命令 # 修改/root/.bashrc文件 vi /root/.bashrc 内容如下 # .bashrc# User specific aliases and functions# 指定rm -i的别名为 rm在使用rm的时候相当于执行 rm -i alias rmrm -i alias cpcp -i alias mvmv -i alias dpsdocker ps --format table {{.ID}}\t{{.Image}}\t{{.Ports}}\t{{.Status}}\t{{.Names}} alias disdocker images# Source global definitions if [ -f /etc/bashrc ]; then. /etc/bashrc fi执行命令使别名生效 source /root/.bashrc4. 数据卷 数据卷命令官方地址 https://docs.docker.com/engine/reference/commandline/volume_create/ 什么是数据卷 数据卷是一个虚拟目录它将宿主机目录映射到容器内目录(也叫挂载)方便我们操作容器内文件或者方便迁移容器产生的数据。 例如果我们要让Nginx代理我们的静态资源最好是放到html目录如果我们要修改Nginx的配置最好是找到conf下的nginx.conf文件。 但遗憾的是容器运行的Nginx所有的文件都在容器内部。所以我们必须利用数据卷将两个目录宿主机目录关联方便我们操作 为什么不让容器目录直接指向宿主机目录呢 因为直接指向宿主机目录就与宿主机强耦合了如果切换了环境宿主机目录就可能发生改变了。由于容器一旦创建目录挂载就无法修改这样容器就无法正常工作了。但是容器指向数据卷一个逻辑名称而数据卷再指向宿主机目录就不存在强耦合。如果宿主机目录发生改变只要改变数据卷与宿主机目录之间的映射关系即可。 数据卷常用命令 容器与数据卷的挂载要在创建容器时配置对于创建好的容器是不能设置数据卷的。而且创建容器的过程中数据卷会自动创建。 二、docker自定义镜像 1. 了解镜像结构 思考 如果我要部署一个Java项目把它打包为一个镜像该怎么做呢 要想自己构建镜像必须先了解镜像的结构。镜像之所以能让我们快速跨操作系统部署应用而忽略其运行环境、配置就是因为镜像中包含了程序运行需要的系统函数库、环境、配置、依赖。因此自定义镜像本质就是依次准备好程序运行的基础环境、依赖、应用本身、运行配置等文件并且打包而成。 打包镜像步骤 准备一个linux服务(CentOS或者Ubuntu均可)java项目并不需要完整的操作系统仅仅是基础运行环境即可这一步保证了即使镜像所处操作系统不同镜像还是能够使用安装并配置JDK配置java运行环境拷贝jar包配置启动脚本也就是指定项目的入口函数 但需要注意的是 上述步骤中的每一次操作其实都是在生产一些文件系统运行环境、函数库、配置最终都是磁盘文件所以镜像就是一堆文件的集合。镜像文件不是随意堆放的而是按照操作的步骤分层叠加而成每一层形成的文件都会单独打包并标记一个唯一id称为Layer层。这样如果我们构建时用到的某些层其他人已经制作过就可以直接拷贝使用这些层而不用重复制作。 2. 了解Dockerfile Dockerfile命令官方地址 https://docs.docker.com/engine/reference/builder/ 由于制作镜像的过程中需要逐层处理和打包比较复杂所以Docker就提供了自动打包镜像的功能。我们只需要将打包的过程每一层要做的事情用固定的语法写下来交给Docker去执行即可。 Dockerfile常见命令 Dockerfile详解 # 查看centos版本cat /etc/issue # 或cat /etc/redhat-release ----------------------------------------------------- # 查看内核linux版本cat /proc/version # 或uname -a # 或uname -r完整的Dockerfile文件 (包含操作系统、JDK、JAR、入口脚本) # 指定基础镜像(可以理解为指定操作系统) 此处根据案例使用ubuntu FROM ubuntu:16.04 # 配置环境变量JDK的安装目录 ENV JAVA_DIR/usr/local #配置容器内时区 ENV TZAsia/Shanghai # 拷贝jdk和java项目的包 COPY ./jdk8.tar.gz $JAVA_DIR/ # 拷贝jar包到容器的/tmp/app.jar COPY ./docker-demo.jar /tmp/app.jar # 设定时区 RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime echo $TZ /etc/timezone # 安装JDK RUN cd $JAVA_DIR \ tar -xf ./jdk8.tar.gz \ mv ./jdk1.8.0_144 ./java8 # 配置环境变量 ENV JAVA_HOME$JAVA_DIR/java8 ENV PATH$PATH:$JAVA_HOME/bin # 指定项目监听的端口 EXPOSE 8080 # 入口java项目的启动命令 其实执行的就是Java -jar app.jar ENTRYPOINT [java, -jar, /app.jar]思考 以后我们会有很多很多java项目需要打包为镜像他们都需要Linux系统环境、JDK环境这两层只有上面的3层不同因为jar包不同。如果每次制作java镜像都重复制作前两层镜像是不是很麻烦。所以就有人提供了基础的系统加JDK环境我们在此基础上制作java镜像就可以省去JDK的配置了 简化后的Dockerfile文件 (包含基础镜像、JAR、入口脚本) # 基础镜像 FROM openjdk:11.0-jre-buster # 设定时区 ENV TZAsia/Shanghai RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime echo $TZ /etc/timezone # 拷贝jar包 COPY docker-demo.jar /app.jar # 入口 ENTRYPOINT [java, -jar, /app.jar]3. 构建Dockerfile文件完成自定义镜像 openjdk:11.0-jre-buste是被人封装好的一个基础的系统包含基础的操作系统和jdk的环境所以我们可以只用关注项目jar包和入口脚本即可openjdk:11.0-jre-buste 在练习资料里已提供练习资料里面叫 jdk.tar 因为我们使用基础的系统加JDK环境(openjdk:11.0-jre-buster)所以需要加载openjdk:11.0-jre-buster镜像 可以去镜像仓库拉取也可以上传镜像的tar包进行加载此处使用上传镜像tar包。tar在练习资料里面将编写好的Dockerfile文件和打包好的项目jar以及openjdk:11.0-jre-buster上传到服务器 将openjdk:11.0-jre-buster tar包转为镜像此时基本的操作系统和java环境就具备了 docker load -i jdk.tar 执行命令构建镜像 # 进入镜像dockerTest cd /root/dockerTest # 开始构建 docker-demo:1.0 是我们自定义的镜像的名称和版本版本不写默认last docker build -t docker-demo:1.0 .#⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇# 直接指定Dockerfile目录上面两条命令可以合并成一个 docker build -t docker-demo:1.0 /root/dockerTest命令解析 docker build : 就是构建一个docker镜像-t docker-demo:1.0 -t参数是指定镜像的名称repository和tag. : 最后的点是指构建时Dockerfile所在路径由于我们进入了dockerTest目录所以指定的是 . 代表当前目录也可以直接指定Dockerfile目录 查看镜像列表 docker images运行镜像 # 1. 创建并运行容器 docker run -d --name dockerTest -p 8080:8080 docker-demo:1.0 # 2. 查看容器--dps 是因为我使用了命名服务中的命名 dps # 3. 访问 curl localhost:8080/hello/count也可以通过浏览器来访问 三、网络 Docker网络命令官方地址 https://docs.docker.com/engine/reference/commandline/network/ 1. docker常见网络命令 2. docker自带虚拟网络 查看网卡 ip addr2. 测试容器间的网络是否互通 查看运行中的容器 以minio和oracle11g两个容器进行测试查看minio的容器内的ip docker inspect minio查看oracle11g容器内的ip docker inspect oracle11g进入oracle11g容器中ping minio容器看是否互通结果是互通的 docker exec -it oracle11g bash总结 通过上面可以看出容器虽然是相互隔离且互不影响的但是容器之间的网络是互通的。这是因为docker在启动的时候会构建一个虚拟网络当有容器启动的时候docker会为容器分配一个虚拟ID。容器的网络IP其实是一个虚拟的IP并不是真实存在的网络设备外部网络是无法寻址到的这也意味着外部网络无法直接通过Container-IP 访问到容器其值并不固定与某一个容器绑定如果我们在开发时写死某个IP那么在docker重启的时候容器的IP会发生变化连接会失败. 为了解决上面的问题所以需要自定义网络 3. 自定义网络 创建自定义网络 docker network create 网名名查看网络 docker network ls指定容器加入网络在加入网络时可以通过–alias给容器起别名 docker network connect 网络名 容器名 --alias 容器别名进入容器使用别名也能ping通 四、docker快速部署项目 1. 容器部署背景 首先通过Nginx代理静态资源也就是我们的前端页面部署后端代码使用自定义网络关联各容器部署所需镜像MysqlNginxjar包 2. 部署项目(方案一麻烦) 本地目录或文件必须以 / 或 ./开头如果直接以名字开头会被识别为数据卷名而非本地目录名 -v mysql:/var/lib/mysql # 会被识别为一个数据卷叫mysql运行时会自动创建这个数据卷 -v ./mysql:/var/lib/mysql # 会被识别为当前目录下的mysql目录运行时如果不存在会创建目录 因为部署项目需要用到MysqlNginx那么先去拉取镜像启动Nginx并加入到自定义网络(也可以后期加入)记得创建宿主机的挂载目录 docker run -d --name nginx -p 18080:18080 -p 18081:18081 -v /soft/nginx/nginx.conf:/etc/nginx/nginx.conf -v /soft/nginx/html:/usr/share/nginx/html --network hmall a6bd71f48f68上传前端页面到【/soft/nginx/html】下通过映射也被加载到容器内 修改nginx.conf 配置文件进行静态资源代理 至此前端部署完成通过浏览器进行验证 启动Mysql并加入到自定义网络(也可以后期加入)记得创建宿主机的挂载目录 docker run -d --name mysql5.7 -p 3306:3306 -e TZAsia/Shanghai -e MYSQL_ROOT_PASSWORD123456 -v /soft/mysql/data:/var/lib/mysql -v /soft/mysql/conf:/etc/mysql/conf.d --network hmall c20987f18b13上传项目jar包,以及Dockerfile文件 对项目jar包进行编译 docker build -t hmall .9. 运行镜像 # 1. 创建并运行容器并加入自定义网络 docker run -d --name hmall --network hmall -p 8080:8080 hmall # 2. 查看容器--dps 是因为我使用了命名服务中的命名 dps查看容器内的日志 docker logs -f hmall访问验证因为数据没有导入此处暂不予前端联动 3. 使用DockerCompose部署项目(方案二推荐) DockerCompose命令官方地址 https://docs.docker.com/compose/reference/ 常用语法 编写DockerCompose用于一键启动项目 # 指定DockerCompose版本 version: 3services:mysql:image: mysqlcontainer_name: mysqlports:- 3306:3306environment:TZ: Asia/ShanghaiMYSQL_ROOT_PASSWORD: 123456volumes:- ./mysql/conf:/etc/mysql/conf.d- ./mysql/data:/var/lib/mysql# 使用自定义网络networks:- hm-net# 定义项目jarhmall:build: context: .# 指定Dockerfile文件位置dockerfile: Dockerfilecontainer_name: hmallports:- 8080:8080#使用自定义网络networks:- hm-net# 依赖于mysql, 会先去加载mysql再来加载项目jardepends_on:- mysqlnginx:image: nginxcontainer_name: nginx# 对外映射两个端口一个用户的前端页面一个后端管理的页面ports:- 18080:18080- 18081:18081volumes:- ./nginx/nginx.conf:/etc/nginx/nginx.conf- ./nginx/html:/usr/share/nginx/html# 依赖于mysql, 会先去加载mysql再来加载项目jardepends_on:- hmall#使用自定义网络networks:- hm-net #自定义网络 networks:hm-net:name: hmall上传项目jar包Dockerfile文件以及写好的DockerCompose文件并创建挂载目录 一键启动 docker-compose up -d5. 查看镜像 6. 访问验证 前端 后端 7. 停止docker-compose docker-compose down五、docker-compose安装 docker-compose 2.23.3版本下载 链接https://pan.baidu.com/s/115LwBXm4taXCiFK190Xykw 提取码u9tc 从github上下载二进制文件 https://github.com/docker/compose/releases放入/usr/local/bin/ 路径下并重新命名docker-compose mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose赋予执行权限 sudo chmod x /usr/local/bin/docker-compose建立软连接 sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose查看docker版本 docker-compose --version
http://www.yutouwan.com/news/49641/

相关文章:

  • 杭州做网站的好公司有哪些网站站外链接
  • 详情页模板哪个网站好专科函授网页设计实训报告
  • 网站建设化学图片阜宁县建设局网站
  • 西瓜编程网站怎么做新乡网络公司首选
  • 石家庄外贸建站公司手机移动开发网站
  • 国际购物网站网站app在线生成器
  • 网站开发规划书wordpress修改插件路径
  • 上海网站建设网页制作培训阿里云 发布网站 教程
  • 做汤的网站有哪些工作室做什么项目好
  • 网站转移动版网络查控系统设计方案
  • 电影网站制作模版新手如何做网站推广
  • 企业网站建设须知小型办公室中式装修
  • 网站建设新闻如何更新软文写作范文500字
  • 2013网站怎么备案wordpress+播放列表
  • 企业网站keywords最多几个企业网站模板中文
  • 运营公开网是什么网站同一个阿里云可以做两个网站
  • qq相册怎么制作网站黄岛做网站的公司
  • 网站开发技术课程设计报告html5网页设计工具
  • 怎么做秒赞网站手机cms建站系统
  • wordpress建立移动m站拼多多申请注册店铺
  • 小白建设论坛网站南通建设局网站
  • 软件设计说明书模板seo推广分析关键词的第一个步骤
  • 广西南宁房产网站建设网站建设规划与管理 试卷
  • 电子商务网站前台建设常用的技术有关于网站建设类似的文章
  • 网站最下端怎么做潍坊 营销型网站建设
  • wap网站源码苏州建网站公司
  • 厦门医院网站建设高清无线视频传输系统
  • 搬瓦工 做网站华贸中心网站谁做的
  • joomla适合做什么网站为什么网站数量减少
  • 做素食香料哪个网站买甘肃建设局网站首页