GET https://kbin.spritesserver.nl/m/selfhosted@lemmy.world/t/25331/Help-with-Audiobookshelf-Port-Number/favourites

Security

Token

There is no security token.

Firewall

main Name
Security enabled
Stateless

Configuration

Key Value
provider security.user.provider.concrete.app_user_provider
context main
entry_point App\Security\KbinAuthenticator
user_checker App\Security\UserChecker
access_denied_handler (none)
access_denied_url (none)
authenticators
[
  "two_factor"
  "remember_me"
  "App\Security\KbinAuthenticator"
  "App\Security\FacebookAuthenticator"
  "App\Security\GoogleAuthenticator"
  "App\Security\GithubAuthenticator"
  "App\Security\KeycloakAuthenticator"
]

Listeners

Listener Duration Response
Symfony\Component\Security\Http\Firewall\ChannelListener {#723
  -map: Symfony\Component\Security\Http\AccessMap {#722 …}
  -logger: Monolog\Logger {#783 …}
  -httpPort: 80
  -httpsPort: 443
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\ContextListener {#706
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorage {#1017 …}
  -sessionKey: "_security_main"
  -logger: Monolog\Logger {#783 …}
  -userProviders: Symfony\Component\DependencyInjection\Argument\RewindableGenerator {#705 …}
  -dispatcher: Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher {#747 …}
  -registered: false
  -trustResolver: Scheb\TwoFactorBundle\Security\Authentication\AuthenticationTrustResolver {#780 …}
  -sessionTrackerEnabler: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage::enableUsageTracking(): void {#703 …}
}
7.31 ms (none)
Symfony\Component\Security\Http\Firewall\AuthenticatorManagerListener {#584
  -authenticatorManager: Symfony\Component\Security\Http\Authentication\AuthenticatorManager {#595 …}
}
0.00 ms (none)
Scheb\TwoFactorBundle\Security\Http\Firewall\TwoFactorAccessListener {#582
  -twoFactorFirewallConfig: Scheb\TwoFactorBundle\Security\TwoFactor\TwoFactorFirewallConfig {#842 …}
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -twoFactorAccessDecider: Scheb\TwoFactorBundle\Security\Authorization\TwoFactorAccessDecider {#581 …}
}
0.05 ms (none)
Symfony\Component\Security\Http\Firewall\AccessListener {#579
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -accessDecisionManager: Symfony\Component\Security\Core\Authorization\TraceableAccessDecisionManager {#937 …}
  -map: Symfony\Component\Security\Http\AccessMap {#722 …}
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\LogoutListener {#786
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -options: [
    "csrf_parameter" => "_csrf_token"
    "csrf_token_id" => "logout"
    "logout_path" => "app_logout"
  ]
  -httpUtils: Symfony\Component\Security\Http\HttpUtils {#841 …}
  -csrfTokenManager: Symfony\Component\Security\Csrf\CsrfTokenManager {#1015 …}
  -eventDispatcher: Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher {#747 …}
}
0.00 ms (none)

Authenticators

No authenticators have been recorded. Check previous profiles on your authentication endpoint.

Access Decision

affirmative Strategy
# Voter class
1
"Symfony\Component\Security\Core\Authorization\Voter\AuthenticatedVoter"
2
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
3
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
4
"Symfony\Component\Security\Core\Authorization\Voter\ExpressionVoter"
5
"App\Security\Voter\EntryCommentVoter"
6
"App\Security\Voter\EntryVoter"
7
"App\Security\Voter\MagazineVoter"
8
"App\Security\Voter\MessageThreadVoter"
9
"App\Security\Voter\MessageVoter"
10
"App\Security\Voter\NotificationVoter"
11
"App\Security\Voter\OAuth2UserConsentVoter"
12
"App\Security\Voter\PostCommentVoter"
13
"App\Security\Voter\PostVoter"
14
"App\Security\Voter\UserVoter"

Access decision log

# Result Attributes Object
1 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
2 DENIED moderate
App\Entity\Entry {#1821
  +user: Proxies\__CG__\App\Entity\User {#1885 …}
  +magazine: App\Entity\Magazine {#316
    +icon: Proxies\__CG__\App\Entity\Image {#297 …}
    +name: "selfhosted@lemmy.world"
    +title: "selfhosted"
    +description: """
      A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
      \n
      Rules:\n
      \n
      - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
      - No spam posting.\n
      - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
      - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
      - No trolling.\n
      \n
      Resources:\n
      \n
      - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
      - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
      - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
      \n
      > Any issues on the community? Report it using the report flag.\n
      \n
      > Questions? DM the mods!
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 222
    +entryCommentCount: 3916
    +postCount: 0
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729582735 {#324
      date: 2024-10-22 09:38:55.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#288 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#284 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#273 …}
    +entries: Doctrine\ORM\PersistentCollection {#231 …}
    +posts: Doctrine\ORM\PersistentCollection {#189 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#251 …}
    +bans: Doctrine\ORM\PersistentCollection {#168 …}
    +reports: Doctrine\ORM\PersistentCollection {#154 …}
    +badges: Doctrine\ORM\PersistentCollection {#132 …}
    +logs: Doctrine\ORM\PersistentCollection {#122 …}
    +awards: Doctrine\ORM\PersistentCollection {#111 …}
    +categories: Doctrine\ORM\PersistentCollection {#98 …}
    -id: 120
    +apId: "selfhosted@lemmy.world"
    +apProfileId: "https://lemmy.world/c/selfhosted"
    +apPublicUrl: "https://lemmy.world/c/selfhosted"
    +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "selfhosted"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703473826 {#325
      date: 2023-12-25 04:10:26.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703473826 {#319
      date: 2023-12-25 04:10:26.0 +01:00
    }
  }
  +image: null
  +domain: Proxies\__CG__\App\Entity\Domain {#2416 …}
  +slug: "Help-with-Audiobookshelf-Port-Number"
  +title: "Help with Audiobookshelf Port Number"
  +url: null
  +body: """
    Simply put, I can’t get Audiobookshelf to respond to any port other than 80. I’m using the following Docker Compose (spacing may be off because I suck at formatting posts):\n
    \n
    > version: “3.7”  \n
    > services:  \n
    > audiobookshelf:  \n
    > image: ghcr.io/advplyr/audiobookshelf:latest  \n
    > network_mode: “host”  \n
    > ports:  \n
    > - 13378:80  \n
    > restart: unless-stopped  \n
    > volumes:  \n
    > - /media/Vault/ABS/audiobooks:/audiobooks  \n
    > - /media/Vault/ABS/podcasts:/podcasts  \n
    > - /media/Vault/ABS/config:/config  \n
    > - /media/Vault/ABS/metadata:/metadata\n
    \n
    The way I understand it, externally the host should answer on port 13378 and the container on port 80. Just for kicks, I’ve tried the following variations:\n
    \n
    - 13378:80\n
    - 80:13378\n
    - 13378:13378\n
    \n
    I’ve even tried it without the version statement. Regardless of these, Audiobookshelf will only answer on port 80. All my other containers work fine and answer on the port I designate.\n
    \n
    I do not have anything else listening on port 13378.\n
    \n
    What am I doing wrong?
    """
  +type: "article"
  +lang: "en"
  +isOc: false
  +hasEmbed: false
  +commentCount: 2
  +favouriteCount: 16
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1708747597 {#2445
    date: 2024-02-24 05:06:37.0 +01:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#2402 …}
  +votes: Doctrine\ORM\PersistentCollection {#1911 …}
  +reports: Doctrine\ORM\PersistentCollection {#1855 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1395 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1890 …}
  +badges: Doctrine\ORM\PersistentCollection {#1935 …}
  +children: []
  -id: 25331
  -titleTs: "'audiobookshelf':3 'help':1 'number':5 'port':4"
  -bodyTs: "'/advplyr/audiobookshelf:latest':40 '/audiobooks':53 '/config':57 '/media/vault/abs/audiobooks':52 '/media/vault/abs/config':56 '/media/vault/abs/metadata':58 '/media/vault/abs/podcasts':54 '/metadata':59 '/podcasts':55 '13378':45,72,88,91,92,93,135 '3.7':34 '80':15,46,78,89,90,112 'answer':69,109,120 'anyth':130 'audiobookshelf':7,36,106 'compos':22 'contain':75,116 'design':125 'docker':21 'els':131 'even':96 'extern':65 'fine':118 'follow':20,86 'format':31 'get':6 'ghcr.io':39 'ghcr.io/advplyr/audiobookshelf:latest':38 'host':43,67 'imag':37 'kick':81 'listen':132 'm':17 'may':24 'mode':42 'network':41 'port':12,44,71,77,111,123,134 'post':32 'put':2 'regardless':103 'respond':9 'restart':47 'servic':35 'simpli':1 'space':23 'statement':102 'stop':50 'suck':29 'tri':84,97 'understand':63 'unless':49 'unless-stop':48 'use':18 'variat':87 've':83,95 'version':33,101 'volum':51 'way':61 'without':99 'work':117 'wrong':140"
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1703783863
  +visibility: "visible             "
  +apId: "https://lemmy.world/post/10045214"
  +editedAt: null
  +createdAt: DateTimeImmutable @1703734863 {#102
    date: 2023-12-28 04:41:03.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
3 DENIED edit
App\Entity\Entry {#1821
  +user: Proxies\__CG__\App\Entity\User {#1885 …}
  +magazine: App\Entity\Magazine {#316
    +icon: Proxies\__CG__\App\Entity\Image {#297 …}
    +name: "selfhosted@lemmy.world"
    +title: "selfhosted"
    +description: """
      A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
      \n
      Rules:\n
      \n
      - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
      - No spam posting.\n
      - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
      - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
      - No trolling.\n
      \n
      Resources:\n
      \n
      - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
      - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
      - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
      \n
      > Any issues on the community? Report it using the report flag.\n
      \n
      > Questions? DM the mods!
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 222
    +entryCommentCount: 3916
    +postCount: 0
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729582735 {#324
      date: 2024-10-22 09:38:55.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#288 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#284 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#273 …}
    +entries: Doctrine\ORM\PersistentCollection {#231 …}
    +posts: Doctrine\ORM\PersistentCollection {#189 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#251 …}
    +bans: Doctrine\ORM\PersistentCollection {#168 …}
    +reports: Doctrine\ORM\PersistentCollection {#154 …}
    +badges: Doctrine\ORM\PersistentCollection {#132 …}
    +logs: Doctrine\ORM\PersistentCollection {#122 …}
    +awards: Doctrine\ORM\PersistentCollection {#111 …}
    +categories: Doctrine\ORM\PersistentCollection {#98 …}
    -id: 120
    +apId: "selfhosted@lemmy.world"
    +apProfileId: "https://lemmy.world/c/selfhosted"
    +apPublicUrl: "https://lemmy.world/c/selfhosted"
    +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "selfhosted"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703473826 {#325
      date: 2023-12-25 04:10:26.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703473826 {#319
      date: 2023-12-25 04:10:26.0 +01:00
    }
  }
  +image: null
  +domain: Proxies\__CG__\App\Entity\Domain {#2416 …}
  +slug: "Help-with-Audiobookshelf-Port-Number"
  +title: "Help with Audiobookshelf Port Number"
  +url: null
  +body: """
    Simply put, I can’t get Audiobookshelf to respond to any port other than 80. I’m using the following Docker Compose (spacing may be off because I suck at formatting posts):\n
    \n
    > version: “3.7”  \n
    > services:  \n
    > audiobookshelf:  \n
    > image: ghcr.io/advplyr/audiobookshelf:latest  \n
    > network_mode: “host”  \n
    > ports:  \n
    > - 13378:80  \n
    > restart: unless-stopped  \n
    > volumes:  \n
    > - /media/Vault/ABS/audiobooks:/audiobooks  \n
    > - /media/Vault/ABS/podcasts:/podcasts  \n
    > - /media/Vault/ABS/config:/config  \n
    > - /media/Vault/ABS/metadata:/metadata\n
    \n
    The way I understand it, externally the host should answer on port 13378 and the container on port 80. Just for kicks, I’ve tried the following variations:\n
    \n
    - 13378:80\n
    - 80:13378\n
    - 13378:13378\n
    \n
    I’ve even tried it without the version statement. Regardless of these, Audiobookshelf will only answer on port 80. All my other containers work fine and answer on the port I designate.\n
    \n
    I do not have anything else listening on port 13378.\n
    \n
    What am I doing wrong?
    """
  +type: "article"
  +lang: "en"
  +isOc: false
  +hasEmbed: false
  +commentCount: 2
  +favouriteCount: 16
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1708747597 {#2445
    date: 2024-02-24 05:06:37.0 +01:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#2402 …}
  +votes: Doctrine\ORM\PersistentCollection {#1911 …}
  +reports: Doctrine\ORM\PersistentCollection {#1855 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1395 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1890 …}
  +badges: Doctrine\ORM\PersistentCollection {#1935 …}
  +children: []
  -id: 25331
  -titleTs: "'audiobookshelf':3 'help':1 'number':5 'port':4"
  -bodyTs: "'/advplyr/audiobookshelf:latest':40 '/audiobooks':53 '/config':57 '/media/vault/abs/audiobooks':52 '/media/vault/abs/config':56 '/media/vault/abs/metadata':58 '/media/vault/abs/podcasts':54 '/metadata':59 '/podcasts':55 '13378':45,72,88,91,92,93,135 '3.7':34 '80':15,46,78,89,90,112 'answer':69,109,120 'anyth':130 'audiobookshelf':7,36,106 'compos':22 'contain':75,116 'design':125 'docker':21 'els':131 'even':96 'extern':65 'fine':118 'follow':20,86 'format':31 'get':6 'ghcr.io':39 'ghcr.io/advplyr/audiobookshelf:latest':38 'host':43,67 'imag':37 'kick':81 'listen':132 'm':17 'may':24 'mode':42 'network':41 'port':12,44,71,77,111,123,134 'post':32 'put':2 'regardless':103 'respond':9 'restart':47 'servic':35 'simpli':1 'space':23 'statement':102 'stop':50 'suck':29 'tri':84,97 'understand':63 'unless':49 'unless-stop':48 'use':18 'variat':87 've':83,95 'version':33,101 'volum':51 'way':61 'without':99 'work':117 'wrong':140"
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1703783863
  +visibility: "visible             "
  +apId: "https://lemmy.world/post/10045214"
  +editedAt: null
  +createdAt: DateTimeImmutable @1703734863 {#102
    date: 2023-12-28 04:41:03.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
4 DENIED moderate
App\Entity\Entry {#1821
  +user: Proxies\__CG__\App\Entity\User {#1885 …}
  +magazine: App\Entity\Magazine {#316
    +icon: Proxies\__CG__\App\Entity\Image {#297 …}
    +name: "selfhosted@lemmy.world"
    +title: "selfhosted"
    +description: """
      A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
      \n
      Rules:\n
      \n
      - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
      - No spam posting.\n
      - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
      - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
      - No trolling.\n
      \n
      Resources:\n
      \n
      - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
      - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
      - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
      \n
      > Any issues on the community? Report it using the report flag.\n
      \n
      > Questions? DM the mods!
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 222
    +entryCommentCount: 3916
    +postCount: 0
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729582735 {#324
      date: 2024-10-22 09:38:55.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#288 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#284 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#273 …}
    +entries: Doctrine\ORM\PersistentCollection {#231 …}
    +posts: Doctrine\ORM\PersistentCollection {#189 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#251 …}
    +bans: Doctrine\ORM\PersistentCollection {#168 …}
    +reports: Doctrine\ORM\PersistentCollection {#154 …}
    +badges: Doctrine\ORM\PersistentCollection {#132 …}
    +logs: Doctrine\ORM\PersistentCollection {#122 …}
    +awards: Doctrine\ORM\PersistentCollection {#111 …}
    +categories: Doctrine\ORM\PersistentCollection {#98 …}
    -id: 120
    +apId: "selfhosted@lemmy.world"
    +apProfileId: "https://lemmy.world/c/selfhosted"
    +apPublicUrl: "https://lemmy.world/c/selfhosted"
    +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "selfhosted"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703473826 {#325
      date: 2023-12-25 04:10:26.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703473826 {#319
      date: 2023-12-25 04:10:26.0 +01:00
    }
  }
  +image: null
  +domain: Proxies\__CG__\App\Entity\Domain {#2416 …}
  +slug: "Help-with-Audiobookshelf-Port-Number"
  +title: "Help with Audiobookshelf Port Number"
  +url: null
  +body: """
    Simply put, I can’t get Audiobookshelf to respond to any port other than 80. I’m using the following Docker Compose (spacing may be off because I suck at formatting posts):\n
    \n
    > version: “3.7”  \n
    > services:  \n
    > audiobookshelf:  \n
    > image: ghcr.io/advplyr/audiobookshelf:latest  \n
    > network_mode: “host”  \n
    > ports:  \n
    > - 13378:80  \n
    > restart: unless-stopped  \n
    > volumes:  \n
    > - /media/Vault/ABS/audiobooks:/audiobooks  \n
    > - /media/Vault/ABS/podcasts:/podcasts  \n
    > - /media/Vault/ABS/config:/config  \n
    > - /media/Vault/ABS/metadata:/metadata\n
    \n
    The way I understand it, externally the host should answer on port 13378 and the container on port 80. Just for kicks, I’ve tried the following variations:\n
    \n
    - 13378:80\n
    - 80:13378\n
    - 13378:13378\n
    \n
    I’ve even tried it without the version statement. Regardless of these, Audiobookshelf will only answer on port 80. All my other containers work fine and answer on the port I designate.\n
    \n
    I do not have anything else listening on port 13378.\n
    \n
    What am I doing wrong?
    """
  +type: "article"
  +lang: "en"
  +isOc: false
  +hasEmbed: false
  +commentCount: 2
  +favouriteCount: 16
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1708747597 {#2445
    date: 2024-02-24 05:06:37.0 +01:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#2402 …}
  +votes: Doctrine\ORM\PersistentCollection {#1911 …}
  +reports: Doctrine\ORM\PersistentCollection {#1855 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1395 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1890 …}
  +badges: Doctrine\ORM\PersistentCollection {#1935 …}
  +children: []
  -id: 25331
  -titleTs: "'audiobookshelf':3 'help':1 'number':5 'port':4"
  -bodyTs: "'/advplyr/audiobookshelf:latest':40 '/audiobooks':53 '/config':57 '/media/vault/abs/audiobooks':52 '/media/vault/abs/config':56 '/media/vault/abs/metadata':58 '/media/vault/abs/podcasts':54 '/metadata':59 '/podcasts':55 '13378':45,72,88,91,92,93,135 '3.7':34 '80':15,46,78,89,90,112 'answer':69,109,120 'anyth':130 'audiobookshelf':7,36,106 'compos':22 'contain':75,116 'design':125 'docker':21 'els':131 'even':96 'extern':65 'fine':118 'follow':20,86 'format':31 'get':6 'ghcr.io':39 'ghcr.io/advplyr/audiobookshelf:latest':38 'host':43,67 'imag':37 'kick':81 'listen':132 'm':17 'may':24 'mode':42 'network':41 'port':12,44,71,77,111,123,134 'post':32 'put':2 'regardless':103 'respond':9 'restart':47 'servic':35 'simpli':1 'space':23 'statement':102 'stop':50 'suck':29 'tri':84,97 'understand':63 'unless':49 'unless-stop':48 'use':18 'variat':87 've':83,95 'version':33,101 'volum':51 'way':61 'without':99 'work':117 'wrong':140"
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1703783863
  +visibility: "visible             "
  +apId: "https://lemmy.world/post/10045214"
  +editedAt: null
  +createdAt: DateTimeImmutable @1703734863 {#102
    date: 2023-12-28 04:41:03.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
5 DENIED edit
App\Entity\Magazine {#316
  +icon: Proxies\__CG__\App\Entity\Image {#297 …}
  +name: "selfhosted@lemmy.world"
  +title: "selfhosted"
  +description: """
    A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
    \n
    Rules:\n
    \n
    - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
    - No spam posting.\n
    - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
    - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
    - No trolling.\n
    \n
    Resources:\n
    \n
    - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
    - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
    - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
    \n
    > Any issues on the community? Report it using the report flag.\n
    \n
    > Questions? DM the mods!
    """
  +rules: null
  +subscriptionsCount: 1
  +entryCount: 222
  +entryCommentCount: 3916
  +postCount: 0
  +postCommentCount: 0
  +isAdult: false
  +customCss: null
  +lastActive: DateTime @1729582735 {#324
    date: 2024-10-22 09:38:55.0 +02:00
  }
  +markedForDeletionAt: null
  +tags: null
  +moderators: Doctrine\ORM\PersistentCollection {#288 …}
  +ownershipRequests: Doctrine\ORM\PersistentCollection {#284 …}
  +moderatorRequests: Doctrine\ORM\PersistentCollection {#273 …}
  +entries: Doctrine\ORM\PersistentCollection {#231 …}
  +posts: Doctrine\ORM\PersistentCollection {#189 …}
  +subscriptions: Doctrine\ORM\PersistentCollection {#251 …}
  +bans: Doctrine\ORM\PersistentCollection {#168 …}
  +reports: Doctrine\ORM\PersistentCollection {#154 …}
  +badges: Doctrine\ORM\PersistentCollection {#132 …}
  +logs: Doctrine\ORM\PersistentCollection {#122 …}
  +awards: Doctrine\ORM\PersistentCollection {#111 …}
  +categories: Doctrine\ORM\PersistentCollection {#98 …}
  -id: 120
  +apId: "selfhosted@lemmy.world"
  +apProfileId: "https://lemmy.world/c/selfhosted"
  +apPublicUrl: "https://lemmy.world/c/selfhosted"
  +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
  +apInboxUrl: "https://lemmy.world/inbox"
  +apDomain: "lemmy.world"
  +apPreferredUsername: "selfhosted"
  +apDiscoverable: true
  +apManuallyApprovesFollowers: null
  +privateKey: null
  +publicKey: null
  +apFetchedAt: DateTime @1703473826 {#325
    date: 2023-12-25 04:10:26.0 +01:00
  }
  +apDeletedAt: null
  +apTimeoutAt: null
  +visibility: "visible             "
  +createdAt: DateTimeImmutable @1703473826 {#319
    date: 2023-12-25 04:10:26.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS DENIED
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details