部署问题

docker 部署 tomcat

1.docker pull tomcat 拉取tomcat镜像

2.docker images 查看镜像

3.docker run --name tomcat --restart=always -p3306:3306 -v$PWD/test:/usr/local/tomcat/webapps -d tomcat   

   注:

    --name tomcat容器名称 

    --restart=always 开机自启动 

    -p3307:3306 将 本机的3307端口映射到容器中的3306接口 

    -v$PWD/test:/usr/local/tomcat/webapps 将当前目录下的test文件夹 映射到容器中的tomcat文件夹中webapps文件夹

     -d tomcat 用tomcat镜像生成容器

4.docker ps 查看运行中的容器 -a 查看所有容器 包括未运行的

5.docker stop tomcat (容器名称或者容器Id) 停止容器

6.docker restart tomcat(容器名称或者容器Id)  重启容器

7.docker start tomcat(容器名称或者容器Id)  运行容器

8. docker rm tomcat (容器名称或者容器Id)  删除容器

9.docker logs tomcat 查看容器日志

10.将项目源码放置到容器中webapps目录的外部挂载目录中,即可运行项目

11.docker rmi imageId 删除镜像

12.docker exec -it tomcat /bin/bash  进入容器

13.exit退出容器

docker部署mysql

1.docker pull mysql 拉取mysql镜像

2.docker images 查看镜像

3.docker run --name mysql -p 3306:3306 --restart=always -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql

  -e MYSQL_ROOT_PASSWORD=123456 初始化root用户的密码

  -v $PWD/data:/var/lib/mysql 将主机当前目录下的data挂载到容器的/var/lib/mysql

  -v $PWD/logs:logs 将主机当前目录下的logs挂载到容器的/logs目录

  -v $PWD/conf:/etc/mysql/conf.d将主机当前目录挂载到容器/etc/mysql/conf.d

  -p 3307:3306将主机的3307映射到容器的3306

  --restart=always 设置容器的开机自启动

  --name mysql 设置容器名称mysql

  -d mysql  创建mysql镜像的容器

4.docker ps 查询容器

5.此时无法用外部客户端连接mysql

6.docker exec -it mysql /bin/bash 进入容器

7.mysql -uroot -p 进入mysql 

8.mysql> GRANT ALL ON *.* TO 'ROOT'@'%'; 授权

9.mysql>flush privileges; 刷新限权

10.mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIPE NEVER; 更新加密规则

11.mysql>ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';更新root 用户密码

12.mysql>flush privileges;刷新权限

13mysql>exit;退出mysql

14用外部客户端测试连接mysql  成功;

其他部署 

docker 外部tomcat项目部署

1.ps aux|grep tomcat  查询tomcat 存活的线程

2.kill -9 id 杀死线程

3.删除webapps里面的war包 rm -r 文件夹名称

4.将war 包拷贝到webapps目录下  cp /home/czc/superzig2.0.war /home/czc/tomcat/webapps/

5.启动tomcat /home/czc/tomcat/bin/start.sh

6.查看tomcat下面的运行日志 tail -500f /home/czc/tomcat/logs/catlina.out

7.ctrl+c 退出日志

海康摄像头 sdk调用文件部署

vim /etc/profile

末尾添加

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/czc/java/lib:/home/czc/java/lib/HCNetSDKCom

/home/czc/java是HCNetSDKCom   lib文件夹测存储路径
source /etc/profile 执行配置文件

复制在libHCNetSDKCom文件夹到/home/czc/java/下

https://blog.csdn.net/lk142500/article/details/90239324

linux系统 创建数据库
1.mysql -uroot -p123456 --进入数据库
2.create database superzig-operatingtable; --创建数据库
3.show databases; --展示数据库
4.use superzig-operatingtable;
5.source /usr/local/test.sql --执行sql文件 文件夹不能有中文名称
6.show tables;

2.数据库配置文件修改 针对group by的查询问题
whereis mysql找mysql目录
可能在/etc/mysql 目录下面

找到 my.cnf
vim my.cnf


在#max_allowed_packet=20M下面
添加以下内容
[mysqld]
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

重启mysql
service mysql restart、

1.容器时间和tomcat时间的设置
tomcat的时间设置

修改容器时间 ,不用重启容器
touch /etc/sysconfig/clock
vi /etc/sysconfig/clock
插入 ZONE=Asia/Shanghai
保存
mv /etc/localtime /etc/localtime_bak 备份
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

修改tomcat时间
vi /usr/local/tomcat/bin/catalina.sh
把 JAVA_OPTS="$JAVA_OPTS $JSSE_OPTS" 改成
JAVA_OPTS="$JAVA_OPTS $JSSE_OPTS -Duser.timezone=Asia/shanghai"
重启tomcat

https://www.cnblogs.com/jying/p/12176107.html

centos7一步一步搭建docker tomcat 及重点讲解

 

原文地址:https://www.cnblogs.com/jying/p/12176107.html
作者:一定会去旅行
欢迎任何形式的转载,但请务必在文章开始位置使用明显加粗字体注明出处。
限于本人水平,如果文章和代码有表述不当之处,还请不吝赐教。

  系统环境:centos7.7 (VMware中)

  image版本:tomcat:8-jdk8-openjdk (截止2020.01.10该系列版本)

  安装步骤参考文章:https://www.jianshu.com/p/d053573ffab1

  1、docker search tomcat 查看版本总感觉不太直观,可以去官网查找想要的版本 https://hub.docker.com/_/tomcat?tab=tags&page=1 ,然后使用docker pull tomcat:对应版本号 安装,安装最新可以直接使用 docker pull tomcat。 

  

  2、docker images 查看已经安装的镜像。

  

  3、启动一个tomcat容器,并命名为 test_tomcat 。

  

  4、查看启动的docker tomcat 容器。在(2020.1.5号以前)浏览器中输入ip:端口号应该是可以访问到tomcat管理页面的,但是最新版本的docker tomcat镜像运行后的容器竟然都不可以,即使最新版本的tomcat:latest也不行,下面我将为大家介绍处理方式。

  

  (2020.01.05以前)的镜像运行tomcat容器后访问应该是下面的页面 

  

  但(2020.01.05)后的所有版本tomcat镜像启动容器后访问是下面这样的。

  

  这是为什么呢?下面介绍为什么。

  5、创建linux宿主机文件夹用于存储tomcat容器中复制出来的配置文件。

  

  6、进入docker tomcat查看目录。命令 docker exec -it 容器名字(或容器container id) bash。此处推荐用容器名字(如上面命名的容器名字test_tomcat)方便书写。默认进入容器的 /usr/local/tomcat 文件夹,这里注意几个文件夹后面会用到,一个是conf,一个是webapps。我们进入conf,然后查看里面有哪些文件,注意tomcat-users.xml是我们要复制的。  

    然后我们切换进webapps文件夹,查看里面的文件,竟然是空的!!!里面不应该有manager等文件夹吗??等等,我们看上图,webapps后面怎么多了一个webapps.dist文件夹???以前的版本是没有的!让我们切换进webapps.dist文件夹,查看里面的文件,哇!!!这不是应该在webaspps中的文件吗???(个人猜测:因为docker推荐将webapps下的文件挂载在宿主机下,否则删除tomcat容器的时候服务文件会全部丢失,为了让大家主动将webapps挂载出来,可能维护者将以后的tomcat镜像全部改成webapps为空,需要使用者手动将webapps.dist复制出来并挂载使用)我可能是第一个发现这个版本配置的文章???

  

原文地址:https://www.cnblogs.com/jying/p/12176107.html
作者:一定会去旅行
欢迎任何形式的转载,但请务必注明出处。
限于本人水平,如果文章和代码有表述不当之处,还请不吝赐教。

 7、exit退出容器,并复制tomcat容器配置文件(tomcat-users.xml)和整个webapps.dist文件夹到linux 宿主机。用语句 docker cp 容器配置文件路径 linux宿主机存储路径。

  

  8、停止正在运行的tomcat容器,并删除该容器test_tomcat。

  

  9、修改复制出来的文件。tomcat-users.xml配置权限,/webapps/manager/META-INF/context.xml 配置访问地址和端口等。

    编辑tomcat-usrs.xml,底部</tomcat-users>以内添加如下内容,其中授权访问账号为:tomcat,密码为:tomcat.2019

  <role rolename="manager-gui" />
  <role rolename="manager-script" />
  <role rolename="manager-status" />
  <role rolename="manager-jmx" />
  <user username="tomcat" password="tomcat.2019" roles="manager-gui,manager-script,manager-status,manager-jmx" />

   

    切进/webapps/manager/META-INF文件夹,编辑里面的context.xml文件,将以下内容注释掉。  

  

<!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127.d+.d+.d+|::1|0:0:0:0:0:0:0:1" /> -->

   10、重新运行一个tomcat容器,并挂载本地的配置文件到容器对应文件。  

复制代码
docker run -dit --name my_tomcat_2020 -p 8081:8080 --restart=always -e TZ="Asia/Shanghai" -v /etc/localtime:/etc/localtime:ro -v /www/tomcat/tomcat-users.xml:/usr/local/tomcat/conf/tomcat-users.xml -v /www/tomcat/webapps:/usr/local/tomcat/webapps tomcat:8-jdk8-openjdk

参数解析:
-d 后台运行容器,并返回容器ID;
--name 为容器起一个容易区分且容易书写的名字
-p 映射宿主机端口到容器端口,宿主机端口:容器端口
--restart=always 机器重启时自动启动容器
-e       设定一些必须的环境变量。本例子中 -e TZ="Asia/Shanghai" 设定时区为上海,强烈建议国内设定,否则容器内打印的所有日志时间都会差8小时。
-v       挂载宿主机文件到容器。本例三个分别为:
          -v /etc/localtime:/etc/localtime:ro 挂载宿主机时间,保持容器时间正确。
          -v /www/tomcat/tomcat-users.xml:/usr/local/tomcat/conf/tomcat-users.xml 挂载宿主机配置文件到容器。
          -v /www/tomcat/webapps:/usr/local/tomcat/webapps 挂载宿主机/webapps到容器。

更多配置参数含义请参考:https://blog.csdn.net/qq_19381989/article/details/102781663
复制代码

  

  11、重新访问ip:8081,便可以访问页面啦,manager也可以进去~~

    

  12、配置完成~~

  

原文地址:https://www.cnblogs.com/xiatc/p/12519153.html