Моим подходом было бы следующее:
ID INT IDENTITY
и использовать его как ваш первичный ключ (он уникален, узкий, статический - идеальный) ID INT IDENTITY
Попробуйте что-то вроде этого:
CREATE TABLE dbo.Demo(ID INT IDENTITY PRIMARY KEY,
IDwithChar AS 'C' + RIGHT('000000' + CAST(ID AS VARCHAR(10)), 6) PERSISTED
)
В этой таблице будет содержаться ID
значения из 1, 2, 3, 4........
и IDwithChar
будут похожи на C000001, C000002, ....., C000042
и т. д.
При этом у вас есть лучшее из обоих миров:
Проблема внутри контейнера: открытый порт 80
и докер выставляет 32795
для внешних подключений
Конфигурация Wordpress указывает на порт 32795
, вы можете открыть порт 80
, выполнив docker run -p 80:80
и измените конфигурацию wordpress, чтобы использовать порт 80
Если вы не можете использовать порт :80
, то немного более сложным решением является использование iptables
переадресации портов внутри
Пример
➜ ~ docker run -d --cap-add=NET_ADMIN --cap-add=NET_RAW -p 5000:80 nginx
835b039cc92bd9f32b960181bf370d39869c88f5a757423966b467fe01ac219e
➜ ~ docker exec -it 835b039cc92bd9 bash
root@835b039cc92b:/# apt update -qqq ; apt install iptables -yqqq
root@835b039cc92b:/# iptables -t nat -A OUTPUT -o lo -p tcp --dport 5000 -j REDIRECT --to-
port 80
root@835b039cc92b:/# apt install telnet -yqqq
root@835b039cc92b:/# telnet localhost 5000
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
^]
telnet> quit
Connection closed.
root@835b039cc92b:/# exit
# from outside the container
➜ ~ telnet localhost 5000
Trying ::1...
Connected to localhost.
Escape character is '^]'.
^]
telnet> quit
Connection closed.