MYSQL
(1)拉取mysql镜像
docker pull mysql:5.7
(2)创建容器
docker run -it -name=tensquare_mysql -p 33306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
使用mysql连接远程数据库报错
2059 - authentication plugin 'caching_sha2_password' cannot be loaded...
原因:
8.0 以前的默认身份验证插件是 mysql_native_password
8.0 以后的默认身份验证插件是 caching_sha2_password
解决方案:
mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
连接成功。
REDIS
docker pull redis
docker run -itd --name redis-test -p 6379:6379 redis
NGINX
docker pull nginx
sudo docker run --name nginx-test -p 80:80 -d nginx
springboot项目打包
url: jdbc:mysql://emysql:3306/wms?useUnicode=true&characterEncoding=utf8
mvn clean package -Dmaven.test.skip=true target中生成jar包(wms.jar)
vim Dokcerfile
FROM java:8
EXPOSE 8080
VOLUME /tmp
ENV TZ=Asia/Shanghai
RUN ln -sf /usr/share/zoneinfo/{TZ} /etc/localtime && echo "{TZ}" > /etc/timezone
ADD wms.jar /app.jar
RUN bash -c 'touch /app.jar'
ENTRYPOINT ["java","-jar","/app.jar"]`
docker生成镜像
docker build -t wms .
查看是否生成
docker images
docker run -p 8080:8080 --link mysql:emysql --link redis-test:eredis -d wms
然而失败了!!!
最后采用
java -jar 方式
nohup java -jar wms.jar &