Tomcat部署在cenos上的步骤
- 通过rz命令上传tomcat.tar.gz到/usr/local/src中,并且解压,解压后是apache-tomcat-9.0.14的文件夹
因为这个解压后的文件名称太长了,所以我们先给它重命名一下
命令: mv apache-tomcat-9.0.14 tomcat9
- 创建一个目录 /usr/local/tomcat
命令: Mkdir -p /usr/local/tomcat
- 把解压后的tomcat复制到/usr/local/tomcat中
首先进入到这个命令中 cd /usr/local/tomcat
命令: cp ../src/tomcat9 ./
- 配置环境变量(因为自己上传解压包而不是通过docker下拉获取的一般都是配置系统的变量,如果仅仅是在docker容器中的话,可以进入docker中以后,下拉获取)
命令:vi /etc/profile
# /etc/profile
# System wide environment and startup programs, for login setup
# Functions and aliases go in /etc/bashrc
# It's NOT a good idea to change this file unless you know what you
# are doing. It's much better to create a custom.sh shell script in
# /etc/profile.d/ to make custom changes to your environment, as this
# will prevent the need for merging in future updates.
pathmunge () {
case ":${PATH}:" in
*:"$1":*)
;;
*)
if [ "$2" = "after" ] ; then
PATH=$PATH:$1
else
PATH=$1:$PATH
fi
esac
}
if [ -x /usr/bin/id ]; then
if [ -z "$EUID" ]; then
# ksh workaround
EUID=`/usr/bin/id -u`
UID=`/usr/bin/id -ru`
fi
USER="`/usr/bin/id -un`"
LOGNAME=$USER
MAIL="/var/spool/mail/$USER"
fi
# Path manipulation
if [ "$EUID" = "0" ]; then
pathmunge /usr/sbin
pathmunge /usr/local/sbin
else
pathmunge /usr/local/sbin after
pathmunge /usr/sbin after
fi
HOSTNAME=`/usr/bin/hostname 2>/dev/null`
HISTSIZE=1000
if [ "$HISTCONTROL" = "ignorespace" ] ; then
export HISTCONTROL=ignoreboth
else
export HISTCONTROL=ignoredups
fi
export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL
# By default, we want umask to get set. This sets it for login shell
# Current threshold for system reserved uid/gids is 200
# You could check uidgid reservation validity in
# /usr/share/doc/setup-*/uidgid file
if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then
umask 002
else
umask 022
fi
for i in /etc/profile.d/*.sh /etc/profile.d/sh.local ; do
if [ -r "$i" ]; then
if [ "${-#*i}" != "$-" ]; then
. "$i"
else
. "$i" >/dev/null
fi
fi
done
unset i
unset -f pathmunge
export JAVA_HOME=/usr/local/jdk/jdk1.8.0_211
export CLASSPATH=$JAVA_HOME/bin
export PATH=.:$JAVA_HOME/bin:$PATH
export TOMCAT_HOME=/usr/local/tomcat/tomcat9
export CATALINA_HOME=/usr/local/tomcat/tomcat9
export PATH=$TOMCAT_HOME/bin:$PATH
~
在此之前记得配置java的环境变量,java的安装与tomcat相似。
没有java的环境变量,tomcat运行不起来。
- 进入到/usr/local/tomcat/解压后的tomcat文件夹/bin
命令: cd /usr/local/tomcat/tomcat9/bin
- 输入命令./startup.sh
- 在主机浏览器上输入http://虚拟机ip:8080/ 回车
- 如果可以访问就结束了,如果不可以访问,我们记得把8080端口添加到防火墙中
- iptables -I INPUT -p tcp --dport 8080 -j ACCEPT
docker命令
1、查看docker的状态
Systemctl status docker
2、启动docker :systemctl start docker
3、查看docker中运行的容器 docker ps
4、查看docker中所有的镜像 docker ps -a
5、进入某个启动的容器中 docker exec -it 7d4d4a7afd74 bash
7d4d4a7afd74是对应的启动容器的id
6、删除docker容器中的某个镜像
先删除容器,在删除镜像
Docker删除容器 命令:Docker rm 容器id
Docker images 查看安装的镜像
删除镜像 命令:Dokcer rmi 镜像id
7、docker下载程序如mysql 看下面的具体案例
Docker安装mysql
1、docker search mysql; 查看
2、docker pull 搜索出来镜像的name 必须是全称 例如docker pull centos/mysql-57-centos7
但是我们会发现安装的速度很慢很慢,基本上会卡顿,而且跟出现故障一样;
解决方案:修改docker的下载源
2.1、cd /etc/docker
2.2、输入ls
查看一下有没有daemon.json文件,有的话就touch daemon.json 没有的话就创建一个
2.3、命令:rm -rf daemon.json
2.4、然后编辑touch daemon.json
完整的内容如下
{
"registry-mirrors": [
"https://hub-mirror.c.163.com",
"https://mirror.baidubce.com"
]
}
2.5、然后按住esc 输入:wq保存退出
这个时候需要
2.6、 重启 Docker 服务
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker
2.7 检查设置是否生效
$ sudo docker info
结果中显示了我们设置的镜像服务器地址,则说明设置已经生效,返回的信息类似下面这样:
Registry Mirrors:
https://hub-mirror.c.163.com/
3、这个时候可以用docker拉取镜像了;
给镜像创建容器,这个只需要一次就可以了
docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d centos/mysql-57-centos7
4、启动容器
Docker ps -a 查询所有创建容器的程序
我们用docker start 容器id 就可以启动对应的程序了
5、进入某个mysql容器中的命令是
docker exec -it 408dd348992a /bin/bash
举个例子,进入数据库
Mysql -uroot -p
然后输入密码 回车
重设密码的命令是
set password for root@localhost = password('123456');
报错
问题描述:
docker安装了Mysql,然后进入Mysql容器之后,发现密码是空的,我通过mysql命令设置了密码,然后重启mysql,怎么也启动不了。。
解决方案
最后一步是启动容器,而不是在docker容器中启动mysql容器,不然会出现两个mysql容器
Docker ps
Docker exec -it mysql容器id /bin/bash
Mysql -uroot -p
输入密码 回车
SET PASSWORD FOR root@localhost = ‘123456’;
Flush privileges;
Quit
Docker restart mysql容器id名称 重启就可以了;
Mysql命令窗口查看创建的数据库:show databases;